2013-12-09 5 views
1

Я пишу в текстовую папку, находящуюся в папке в моем проекте, но я не могу понять, что не могу написать полный путь, как на моем компьютере, этот компьютер, но когда я хочу взять его в другом месте, я не могу этого сделать, поскольку диски отличаются друг от друга.Проблема с каталогом проекта Visual Studio

Вот скриншот строк, которые я использую, чтобы отправить его в каталог справа.

Файл, к которому я пытаюсь получить доступ, находится в папке AdminAccount и называется User.txt. он отлично работает, поскольку вы можете видеть из ссылки с указанным каталогом как прямой путь, но когда я пытаюсь использовать используемую строку каталога, она не работает.

http://i.imgur.com/hAV55W0.png

Любая помощь, как это обойти? Я пробовал все виды, я пробовал делать

private string[] getLines = System.IO.File.ReadAllLines(@"\AdminAccount\User.txt"); 
private string[] getLines = System.IO.File.ReadAllLines(@"..\AdminAccount\User.txt"); 

Нет радости.

+0

что текущая папка? imean, из какого файла вы пишете строки выше? –

ответ

1

Вы можете использовать,

string rootPath = Environment.CurrentDirectory; 
string filePath = Path.Combine(rootPath,@"..\..\AdminAccount\User.txt"); 
private string[] getLines = System.IO.File.ReadAllLines(@filePath); 

..\ используется для доступа к папке верхнего уровня в иерархии. вы можете продолжать добавлять ..\, чтобы двигаться вверх по иерархии.

Ex:

string path1 = @"C:\Users\Documents\Visual Studio 2010\Projects\Test\Test\bin\Debug" 
string newPath = Path.Combine(path1, @"..\..\AdminAccount\User.txt"); 

новый путь будет возвращать C:\Users\Documents\Visual Studio 2010\Projects\Test\Test\AdminAccount\User.txt

+0

Прекрасное объяснение. Действительно ценю это. Спасибо за помощь! – JARRRRG

0

Вы просто должны установить свойство «Копировать в выходной каталог» файла «user.txt» в «Копировать ВСЕГДА» или «Копировать если новее».

Теперь вы можете прочитать строки, как показано ниже

string[] getLines = File.ReadAllLines(
       Path.Combine(Application.StartupPath, "AdminAccount", "User.txt")); 
Смежные вопросы