Как получить путь к файлу? - PullRequest
0 голосов
/ 03 июня 2018

Я работаю над проектом Windows с кулинарной книгой и подготовил несколько .rtf файлов, чтобы загрузить его в RichTextBox.Проблема в том, что путь к файлу не может работать ни на одном компьютере, только на моем.Код, который я использовал:

richTextBox1.LoadFile("C:\\Users\\nardeen\\Desktop\\cookproject\\cookingproject\\italian.rtf", RichTextBoxStreamType.RichText);

Кроме того, я пытался с этим, но он не работал:

string FilePath = System.Windows.Forms.Application.StartupPath + "\\italian.rtf";

richTextBox1.LoadFile(FilePath, RichTextBoxStreamType.RichText);

Ответы [ 2 ]

0 голосов
/ 04 июня 2018

Не используйте StartupPath или CurrentDirectory для пользовательских данных;это изменится в зависимости от того, как было установлено ваше приложение, обычные пользователи не смогут писать в него, и, вероятно, оно будет удалено, если пользователь исправит свое приложение.

Если вы пытаетесь получить путьв папку, в которую пользователь может читать и писать, и которая не удаляется при удалении или восстановлении приложения, используйте

string path = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments),
    "cooking project", "Italian.rtf");

Если вы хотите включить некоторые начальные данные для пользователей, включите ихв вашем проекте в качестве ресурса или встроенного файла и скопируйте его в папку пользователя при установке приложения.Если вы сообщите нам, какую технологию установки вы используете, мы также сможем дать вам совет.

0 голосов
/ 04 июня 2018

Вы можете использовать System.IO.Directory.GetCurrentDirectory () , чтобы получить путь к файлу папки, в которой находится ваш .exe

Application.StartUpPath включает в себя собственно файл program.exe встрока (то есть C: \ Program \ Program.exe в отличие от C: \ Program)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...