asp.net mvc file path issue \
i am using this to create a new folder
System.IO.Directory.CreateDirectory(@" + somevariable);
the thing is that when i enter the folder c:\newfolder\newfolder in the textbox and is trying to recieve the value up in the controller it is replaced with double slash( \) c:\\newfolder\\newfolder
. how would i prevent \ quotes from coming in the path
Secon开发者_开发百科dly the string.replace is also not working for replacing \ with \\
string strText = OrganMeta.vcr_MetaValue;
string gf = strText.Replace("\\", @"\");
"\\" is equivalent to a string of one character, a backslash. @"\" is also equivalent to a single character, a backslash.
so your Replace method is replacing one form of a backslash with a different form.
try this:
string gf = strText.Replace( @"\\", @"\" );
OR
string gf = strText.Replace( "\\\\", "\\" );
as far as the folder thing goes, Andy is right, it will show a double-backslash in the IDE when in fact there is only one in the string. is there an error when Directory.CreateDirectory() is called? or is the folder created?
Are you sure it's replaced it with \\? If you hover over the variable it will appear to have \\ where there should be a single \ but if you view it in the text visualizer it will show correctly.
Not sure what you mean by string.replace is not working...?? Can you give an example of the code that's not working?
Slashes don't get doubled between the form submit and your controller action.
It's far more likely that you're viewing the result in the debugger or another context that shows two slashes to allow you to distinguish between escaped characters (\n) and a literal slash ().
Write the string to the debug window to verify this.
System.Diagnostics.Debug.WriteLine("SomeText");
精彩评论