1

我正在尝试将文件创建-读/写到用户 AppData\Roaming 文件夹的子文件夹中:

string fileloc = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "FolderName" + Path.AltDirectorySeparatorChar + "SomeFile.txt");

这在我的电脑上运行得非常好,但是当我在朋友的日本笔记本电脑(使用 ¥ 作为其目录分隔符)上运行该程序时,他们只能读/写文件,如果需要创建该程序会崩溃文件。(我也尝试了非 Alt 目录分隔符。)

打印的字符串 fileloc:

C:¥Users¥UserName¥Appdata¥Roaming¥FolderName/SomeFile.txt

4

2 回答 2

1

怎么样

string fileloc = Path.Combine(Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "FolderName"), "SomeFile.txt");

或者,也许更容易理解:

string directoryPath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "FolderName"); 
string fileloc = Path.Combine(directoryPath, "SomeFile.txt");
于 2011-04-02T01:29:29.977 回答
1

string fileloc = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), Path.Combine("FolderName", + "SomeFile.txt"));

应该做你所期望的。那对你有用吗?

于 2011-04-02T01:30:29.380 回答