在EXE所在的文件夹中创建文档(VB)



我开始使用FileStream制作文本文档。当你这样做的时候,你必须明确一条道路。有没有办法在EXE文件所在的文件夹中创建文本文档?

(我问这个问题是因为这个程序是要下载的,所以我想我无法澄清我的电脑特定的路径(

谢谢!

你是对的,你不能在你的程序中烘焙一个特定于你的计算机的路径,因为这样它就不会在用户的计算机上工作

Jimi提出了一个明智的观点,即程序通常安装到C:Program Files或类似程序,并且不可能自动写入其中的子文件夹——您必须向用户请求权限(Elevation(。。头痛

最好决定你想要的路径:

  • 如果你需要一个临时路径,例如下载一些东西然后扔掉,你可以调用Path.GetTempFilename()Path.GetTempPath()——前者在用户的临时文件夹中创建一个0字节的随机名称文件,并返回路径。后者为您提供临时文件夹的路径,以便您可以创建自己的文件
  • 如果文件要有一些永久性,比如用户保存他的工作,你应该向用户索要。SaveFileDialogFolderBrowserDialog是两个东西,你可以把它们放在windows窗体上,然后调用ShowDialog(),向用户显示一个用户界面,他们可以在那里选择路径。在它们确定或取消后,检查它们是否确定或取消,然后分别使用对话框的FilenameSelectedPath继续(如果它们确定(

当你在写文件时,除非你真的需要在文件中搜索,否则不使用FileStream会更容易。更容易:

System.IO.File.WriteAllText(path here, contents here)

如果您必须将字符串变量的内容写入文件

创建文本文件的最佳方法是使用CreateText方法。它将在可执行程序文件之外创建一个文件。你可以走下面的路。

Dim sw as StreamWriter = File.CreateText("myfile.txt")
Dim str as String = "Your text"
sw.Write(str)
sw.Flush()
sw.Close()

最新更新