C#의 상대 경로가 나를 위해 작동합니다. 한 가지 경우로, 내 App에 일련의 Texture2d 객체를 처리하면, 파일 이름을 가져 와서 파일을 찾고 이미지 객체에 텍스처를로드하는 데 사용합니다. 그런 다음 클래스 파일에 저장된 상대 경로에서 이미지를로드하고 Content/gfx에 상대적인 상대 경로를 사용해야합니다. 하지만 이러한 텍스처를로드하지 않으면 이러한 상대 경로가 실패합니다. 내 상대 경로가 실패하지 못하게하려면 어떻게해야합니까? 웹 작업에서 모든 rel 경로는 우리가 작업하는 파일이있는 폴더와 관련이 있습니다.이 방법으로 설정하고 내 응용 프로그램이있는 루트 폴더에 대한 모든 rel 경로를 만들 수 있습니까? 당신이 걱정하는 경우Winforms의 상대 경로
7
A
답변
18
처음에는 상대 경로를 사용하지 않는 것이 좋습니다.
Path.Combine을 사용하면 상대 경로를 절대 경로로 바꿀 수 있습니다. 예를 들어, 시작 EXE의 전체 경로를 얻기 위해 이것을 사용할 수 있습니다 : 그 일단
string exeFile = (new System.Uri(Assembly.GetEntryAssembly().CodeBase)).AbsolutePath;
, 당신은 디렉토리입니다 얻을 수 있습니다 :
string exeDir = Path.GetDirectoryName(exeFile);
와 절대에 상대 경로를 설정 경로 :
string fullPath = Path.Combine(exeDir, "..\\..\\Images\\Texture.dds");
이것은 상대적 경로를 사용하는 것보다 훨씬 더 신뢰할 수 있습니다.
1
실행 파일이나 디렉토리의 하위 디렉토리에있는 같은 디렉토리에 있어야 리소스를 기대하는 경우, 항상
string fullPath = System.IO.Path.Combine(System.IO.Directory.GetCurrentDirectory(), subPath);
를 사용하는 것이 가장 좋습니다 또는 작업 디렉토리 이 작업을 잘못 수행했을 수 있습니다.
string fullPath = System.IO.Path.Combine(System.Reflection.Assembly.GetEntryAssembly().Location, subPath);
0
// [이름 공간] 당신이 Depug에 .- 파일을 복사해야합니다 // 이름 공간 이
string path = (Assembly.GetEntryAssembly().Location + "");
path = path.Replace("name space", "filename.--");
// [WindowsFormsApplication4] is name space
//you should copy your "mysound.wav" into Depug file
//example::
string path_sound = (Assembly.GetEntryAssembly().Location + "");
path_sound = path_sound.Replace("WindowsFormsApplication4.exe", "mysound.wav");
SoundPlayer player1 = new SoundPlayer(path_sound);
player1.Play();
관련 문제
- 1. 상대 경로
- 2. VB.NET의 절대 경로 상대 경로
- 3. 크롤러, 절대 경로 상대 경로
- 4. 상대 파일 경로
- 5. .NET에서 compileroptions의 상대 경로
- 6. Uri을 사용하는 상대 경로
- 7. URL에 상대 경로 해석하기
- 8. 리소스 파일의 상대 경로?
- 9. JavaScript에서 이미지의 상대 경로
- 10. App.config 상대 경로
- 11. t SQL의 상대 경로?
- 12. 바람둥이 상대 경로 설정
- 13. OSGi 번들의 상대 경로
- 14. 프로그램은 상대 경로
- 15. robots.txt 및 상대 경로
- 16. Response.AddHeader를 사용하는 상대 경로
- 17. OBR 저장소의 상대 경로?
- 18. Zend_framework - 이미지의 상대 경로
- 19. settings.py의 상대 경로 settings.py에서
- 20. .NET 설정 상대 경로
- 21. py2exe에서 상대 경로 지정
- 22. 상대 v 절대 경로?
- 23. 실행중인 어셈블리의 상대 경로
- 24. 상대 파일 경로 문제
- 25. C를 사용하는 상대 경로 #
- 26. 공유 라이브러리의 상대 경로
- 27. ZipOutputStream 상대 경로
- 28. File.ReadAllLines 메서드의 상대 경로
- 29. C#의 상대 경로
- 30. T4 템플릿 상대 경로
이 디버그 또는 배치 모드에 파일입니까? –