2011-04-22 7 views
5

내 응용 프로그램이 Windows 및 Linux에서 실행되도록합니다.
응용 프로그램은 특정 디렉토리 구조를 사용합니다. C/Windows 경로를 어떻게 처리해야합니까?

appdir/ 
     /images 
     /sounds 

은 무엇 윈도우와 리눅스의 차이를 명명 파일의 차이 (경로)를 처리하는 좋은 방법이 될 것입니다? 각 플랫폼에 대한 변수를 코딩하고 싶지 않습니다. 예 : 의사 코드

if #Win32 
    string pathVar = ':c\somepath\somefile.ext'; 
else 
    string pathVar = '/somepath/somefile.ext'; 

답변

13

당신도 \ 또는 /Path.DirectorySeparatorCharacter 상수를 사용할 수 있습니다.

또는 Path.Combine을 사용하여 경로를 만들면 올바른 구분 기호가 자동으로 삽입됩니다.

+0

http://www.mono-project.com/Guidelines:Application_Portability#Path_Separators – Eminem

+0

['Path.DirectorySeparatorChar'] (https://msdn.microsoft.com/en-us/library/system)를 의미합니까? io.path.directoryseparatorchar % 28v = vs.110 % 29.aspx)? –

0

모노를 사용하는 경우. System.IO.Path 클래스에서 다음을 찾을 수 있습니다.

Path.AltDirectorySeparatorChar 
Path.DirectorySeparatorChar 

희망이 있습니다.

관련 문제