Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
138 views
in Technique[技术] by (71.8m points)

c# - Modify path string to improve robustness

I have a a string for a path for a file my program reads data from. I want to improve the robustness and I recall seeing someone do .lablalalbla but I'm finding it a bit hard to find a topic that explains how this work so I can implement it into my program.

My path (I'm aware that the naming isn't correct but it'd interfere with my property if I named it with a capital P)

private const string path = @"C:UserszainDesktopprogram_storageAccountDatabase.txt";

I'd like it to be something like .program_storageAccountDatabase.txt (this doesn't work unfortunately) as it'd mean I can move the program around without having to change the string in the constants class.

Any and all help is appreciated

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

You can use something like the following to store/read the file:

var dir = Path.Combine(Environment
    .GetFolderPath(Environment.SpecialFolder.ApplicationData), "MyProgram");
if(!Directory.Exists(dir))
    Directory.CreateDirectory(dir);
var path = Path.Combine(dir, "AccountDatabase.txt");

This will use or create a folder in the App_Data of your user account and then return the path to a file in that folder. See the Environment.SpecialFolder enum for other locations possible.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

1.4m articles

1.4m replys

5 comments

57.0k users

...