Как получить простой относительный путь к файлу в c# для удобной папки - PullRequest
0 голосов
/ 28 января 2020

Я довольно новичок в C#. У меня есть небольшой проект, который использует файл CSV. Я хочу, чтобы пользователь упомянутого небольшого приложения мог поместить файл CSV в ту же папку, что и файл запуска (или файл .application), и программа, чтобы иметь возможность найти его. Я попытался использовать Application.StartupPath, но это привело меня к пути к файлу, отличному от того, на который я надеялся.

В настоящее время, когда я публикую sh мой проект, у меня есть мой 'setup.exe ',' Floyds.application 'и' Файлы приложений ', расположенные в' C: \ Users \ Dell \ Desktop \ Floyds Опубликован '. Это то место, где я бы хотел разместить свой файл CSV так, чтобы приложение его считывало. (Конечно, в моем конкретном случае c это просто пример, я бы хотел, чтобы маленькая папка с этими тремя была местом, куда вы можете поместить CSV файлов независимо от того, где они находятся.)

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

string filepath;
            if(FileAddressBox.Text == "")
            {
                filepath = Application.StartupPath + @"\InitialTable.csv";
            }
            else
            {
                filepath = FileAddressBox.Text;
            }

            using (var reader = new StreamReader(filepath))

Заранее спасибо!

Редактировать: Я должен был пояснить, что это приложение winforms. Мои извинения!

Редактировать 2: В идеале я надеюсь, что пользователь приложения регулярно обменивает файл CSV с другими файлами CSV, чтобы получить разные результаты при запуске приложения, чтобы избавить пользователя от необходимости ввода путь к файлу другого файла CSV вручную.

Редактировать 3: Ссылка на другой вопрос, которую мне дали, тоже не работает. Добавлен код, где он используется.

...