2011-03-02 199 views
-1

我用下面的代码摆弄周围。不过,我需要从C:\MY FOLDER\MY FILE格式的C:\\MY FOLDER\\MY FILE格式重组的文件名。我怎样才能做到这一点?更改C:文件夹文件到C:\ \文件夹文件

Public Class Form1 
    Private Sub TextBox1_Clicked(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.Click 
     'OpenFileDialog1.Title = "Please Select a File" 
     'OpenFileDialog1.InitialDirectory = "C:temp" 

     OpenFileDialog1.ShowDialog() 

    End Sub 

    Private Sub OpenFileDialog1_FileOk(ByVal sender As System.Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles OpenFileDialog1.FileOk 

     Dim strm As System.IO.Stream 
     strm = OpenFileDialog1.OpenFile() 
     TextBox1.Text = OpenFileDialog1.FileName.ToString() 
     If Not (strm Is Nothing) Then 
      ''insert code to read the file data 
      strm.Close() 
      'MessageBox.Show("file closed") 
     End If 

    End Sub 

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 

     Dim FILEx As String = "C:\FILEPATH.txt" 

     If System.IO.File.Exists(FILEx) = True Then 
      Dim objWriter As New System.IO.StreamWriter(FILEx, False) 
      objWriter.WriteLine(TextBox1.Text) 
      objWriter.Close() 
     End If 
    End Sub 
End Class 
`code` 

代码很粗糙,我只是测试了一些东西。

+0

这是什么的问题有代码为什么你加倍\”做什么? S'你到底想干什么? – dbasnett 2011-03-02 12:41:51

回答

0

编辑(VB,不C#,BOOH:P)

如果你正在写一个明确的字符串,如 “C:\ FILEPATH.txt” 你需要加倍的\自己。否则,VB会认为\ F是一个特殊字符。该字符串或@之前的字符串。

所以:

"C:\\FILEPATH.txt" 

@"C:\FILEPATH.txt" 

内部VB只会看到一个\ 所以,如果说,你从你不需要一个文本框获取路径加倍反斜杠。

编辑

好了,所以根据here VB.NET实际上确实无法逃避反斜杠。那么考虑我的答案毫无用处。 ?(虽然也许我受过教育的一些C-清晰那里......(我知道我知道,我在这里抓:P)

+0

嗯....那C#代码看起来很像VB! – 2011-03-02 22:06:17

+0

IIRC,这是不正确的。我记得拉我的头发好几个小时在VB.NET去'“等等等等等等\ n“',只有认识到,它不展开反斜杠。有人可以快速检查吗?(不要有很好的视觉工作室安装可用ATM ..) – 2011-03-03 06:57:47