2014-03-13 6 views
0

숫자로 파일을 정렬하려고합니다. 파일 목록 :주문을 숫자로 지정하려면 어떻게해야합니까?

1.JPG 2.JPG 3.JPG 4. JPG 10.jpg 20.jpg

이 목록과 같이 주문할 것이다 11.jpg :

1.JPG 10.jpg 11.jpg 2.JPG 20.jpg 3.JPG 4.jpg

private void button1_Click(object sender, EventArgs e) 
    { 
     string x = txtPath.Text; 
     string[] path = Directory.GetFiles(x); 

     string[] filePaths = path; 
     foreach (string element in filePaths) 
     { 
      lb1.Items.Add(Path.GetFileName(element)); 
     } 

     lb1.Sorted = true; 
    } 
+0

가능한 [사용자 친화적 인 방식으로 숫자가 포함 된 문자열 정렬] (0120-558-005) 목록 : –

답변

0

그들은 문자열이므로이 방법으로 정렬하고 사전 식 정렬을 시도하십시오. 이 같은

시도 뭔가 : 당신이 문자열을 원하는 경우

string[] line = { "file1.jpg", "file2.jpg", "file10.jpg"}; 
Regex r = new Regex("/d+"); 
var result = line.OrderBy(x => r.Match(x).Value); 

는이를 사용

string[] result = line.OrderBy(x => r.Match(x).Value).ToArray<string>(); 

는 사용자의 요구에 적응.

출력은 다음과 같습니다

파일 1

파일 2

file10

0

당신은 사진의 번호를 추출하고 일부 INT 번호, 그것을 분류로 분석하고있는 그 넣어 후 수 있습니다 확장 프로그램을 배치하십시오.

0

ls -v * .jpg

ls 맨 페이지를 확인하십시오.

+0

list 변수에 : Files ='ls -v * .jpg' 그리고 echo하고 잘라냅니다. – ewing

+0

hmph. files = $ (ls -v * .jpg) – ewing

관련 문제