2013-02-01 2 views
1

안녕하세요 지금,문자열에 몇 가지 문자가 들어 있다는 것을 아는 방법?

D:\Bank Pelapor\BNI\Repository\201209\Instance\123456789-2012-09-30-BSMS1-1.xbrl 

경로가 -1 파일 확장자 전에, 내가 뭔가를하고 싶은 버전을 사용하여 파일로 구성되어있다, 재치에게이 문자열을 할

을 원하는 전 이미이 코드와 함께 할, 내가 경로 분할 :

string[] filefile = dr["Path_XBRL"].ToString().Split('\\', '-'); 


    if(filefile.length >11) 
    { 

     do.something(); 

    } 

    else 
    { 
     do.somethingelse(); 
    } 

을하지만 난 언젠가 경로가 변경 또는 수정되는 것을 두려워 어떤 솔루션이 있습니까?

+0

그렇게 경로에 파일의 버전을 이잖아, 내가 사용 - 동일한 이름을 가진 모든 새로운 업로드 된 파일에 하나, 이렇게 때와 -1 내가 뭔가를 원하고, 내가 확인하는 방법에 혼란스러워 그게 파일 -1 : p – Sabilv

답변

2

path의 형식은 "{DirectoryName}\{FileName}-{VersionNumber}.{Extension}"입니다.

확장자가없는 경로에서 파일 이름을 얻으려면 Path.GetFileNameWithoutExtension(myPath)System.IO으로 지정하십시오.

string fileName = Path.GetFileNameWithoutExtension(path); // Gets the file name without extension 
string versionString = fileName.Split('-').LastOrDefault(); // Gets the string after the last "-" 
int version; 
if(int.TryParse(versionString, out version)) // If "versionString" can be converted into an integer 
    // TODO : If there is a version number (stored in "version") 
else 
    // TODO : If there is no version number 
+0

이미 Path.GetFileNameWithoutExtension (myPath)이지만 파일 이름과 버전은 각 레코드마다 다릅니다. – Sabilv

+0

이미 :) 미안합니다. – Sabilv

+0

@SabilValdano 내 게시물을 편집했습니다. 네가 원한다고 원하는가? –

관련 문제