After much searching and looking extensively, I have a question that is undoubtedly dumb but I’m just missing something easy. I just published my first website and obviously had to make a few changes. I’m using a writer class, before it was just writing to a path on my computer, but that’s obviously not an option now, what I’m trying is this:
using (StreamWriter writer = new StreamWriter(@"~\Files\test.txt"))
I just want this to write this to the Files folder in my project. What’s the syntax? I’m also using dotnetzip and having the same issue trying a different syntax:
zip.AddFile("Files/test.txt");
What’s the way to do this? Thanks!
For a Windows (desktop) application, do:
The application path is accessible in
Application.StartupPath, and you can usePath.Combineto combine parts of a path together.For ASP.net, you need
Server.MapPathinstead ofApplication.StartupPath:Of course since this is all hardcoded, you should also be able to simply do
Depending on your needs, you may need to use
.instead of~. See also Server.MapPath("."), Server.MapPath("~"), Server.MapPath(@"\"), Server.MapPath("/"). What is the difference?.