WPF 런타임에 내 프로젝트 폴더 내의 리소스 / 콘텐츠 파일을 수정하는 방법 (bin 디렉터리가 아님)? "최근 변경 사항"섹션 구현

J. 피아 스코프 스키

런타임시 프로젝트 폴더 (특히 "Assets / recentChanges.txt")에있는 파일의 내용을 수정하고 싶습니다. 최근 응용 프로그램 변경 사항에 대한 정보가 포함되어 있다고 가정 해 보겠습니다. 나중에 개발자가 편집하고 다시 저장할 수있는 텍스트 상자 컨트롤을 읽고 바인딩해야합니다. 콘텐츠 파일의 문제는 출력 디렉터리에 복사 되므로 Assets 폴더의 원본 파일이 아니라 bin / Debug / Assets / 폴더 의 원본 파일을 편집한다는 것 입니다. 그리고 임베디드 리소스 이러한 파일이 수정 될 수 없기 때문에 빌드 작업이 옵션을 선택하지 않습니다.

문제는 런타임 중에 원래 root / Assets / recentChanges.txt 위치에서 언급 된 .txt 파일을 어떻게 수정할 수 있습니까? 아래 지침은 모두 유사한 빌드 종속 경로를 가리 킵니다.

Environment.CurrentDirectory;
Assembly.GetExecutingAssembly().Location;

즉, 다음과 같은 조건에서 "최근 변경 사항"섹션을 구현하기위한 올바른 접근 방식은 무엇입니까?

  • 원래 프로젝트 위치의 텍스트 파일을 기반으로
  • UI를 통해 런타임에 파일을 수정할 가능성
  • 출력 폴더에 복사되고 게시 된 애플리케이션에서 사용자에게 표시되는 파일 (텍스트 상자를 통해)

"최근 변경 사항"정보를 데이터베이스에서 수집하거나 .txt 파일을 수동으로 수정 한 다음 출력 위치로 복사 할 수 있기 때문에 이것이 완벽한 접근 방식이 아닐 수 있다는 것을 알고 있습니다. 그러나 문제가 다소 혼란스럽고 도움이 필요합니다. 감사!

mm8

컴파일되고 실행중인 응용 프로그램은 "원래"위치에 대해 전혀 알지 못합니다. 이 위치는 애플리케이션이 빌드 될 때 Visual Studio에만 중요합니다.

이 폴더의 파일을 수정하려면 절대 경로 (예 : " c:\your_project_folder\file.txt") 를 지정해야합니다 .

.exe는 컴파일 된 위치를 알 수 없습니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

Related 관련 기사

뜨겁다태그

보관