Windows資源管理器對帶數字的檔名排序是如何實現的

時間 2021-10-14 23:47:33

1樓:dt__________哥

可能是會判斷 前面如果是數字的話 自動按位數在前面補零

猜的...

2樓:匿名使用者

兩個檔名或目錄名進行帶阿拉伯數字的排序,演算法是相當簡單的。基本思路還是兩個檔名或目錄名的字串從左到右逐位比較,但需注意幾點:

(1)兩個字串中的連續為數字的子字串要視為一個整體“位”來比較。也是採用從左到右逐位比較的方法,比較之前先在位數少的數字串前填充0使兩個數字串位數相等;

(2)進行比較時不能偷懶用先轉換成數字再相減看結果是正是負還是零的方法,因為數字位數可能很長超過long型的長度限制;

(3)兩個位數不同但數學上相等的數字,它們實際上是有先後次序的:比如123和00123,它們數學上是相等的,但位數多的00123要排在前面。

我這裡給出一個c#的帶數字排序程式,已經除錯成功可以直接拿來用。

更進一步,程式還可以進一步增加中文數字排序的功能,如“三”應該排在“六”之前。windows可能只是簡單按照漢字拼音字母順序來排序,所以資源管理器裡可以看到檔名“三”是該排在“六”之後的,而且不象阿拉伯數字那樣,windows沒有登錄檔修改等配置方法來開啟或關閉中文數字排序,畢竟windows是英美人設計的不是中國人嘛從一開始就沒有考慮漢字的問題,即使它是中文版。程式加入中文數字排序比阿拉伯數字排序更麻煩,因為同一個數字可能有多箇中文數字表示方法,比如12可以說十二也可以說一十二,360可以說三百六十也可以說三百六。

帶阿拉伯數字的字串數字排序c#源程式:

//- 如果 filenamex 小於(排序在前) filenamey,則返回 -1 。

//- 如果 filenamex 大於(排序在後) filenamey,則返回 1 。

//- 如果 filenamex 等於 filenamey,則返回 0。

本應用中,因為輸入的是同一目錄下的檔名或目錄名,它們是不會重名的,所以方法返回0是不可能的。

int numericalsorting(string filenamex, string filenamey)

else if (a[i] != b[j])

return a[i].compareto(b[j]);

//以下程式是在前面比較相等的情況下為下一次while迴圈中的後續位比較做準備。如果a或b至少有一個前面的比較已經到達最後一個字元了,則可以立即得出排序結果而無需再比較下去

if (i == a.length - 1 && j == b.length - 1)

return 0;

else if ((i == a.length - 1) && (j < b.length - 1))

return -1;

else if ((i < a.length - 1) && (j == b.length - 1))

return 1;

i++;

j++;}}

windows中檔案或者檔名是按照什麼原則排序的

3樓:張馳管理諮詢****

舉個例子,假如你的資料夾有1.jpg、2.jpg、……、20.

jpg這樣一些**檔案,在windows 7資源管理專器裡會看到他們完全按屬照數字大小順序排列。但使用其他看圖軟體進行重排列時,10.jpg會緊跟在1.

jpg後面出現,然後才是2.jpg,接著又是20.jpg,也就是說,他們是按照首字母排序的,若首字母相同則看下一位字母。

如果你習慣類似看圖軟體這樣的排序規則,倒是可以讓windows 7通融一下,改變預設的排序規則。

在開始選單搜尋框裡輸入“gpedit.msc”,回車開啟組策略編輯器,依次“計算機配置”—“管理模板”—“windows 元件”—“windows 資源管理器”,在右邊視窗找到“關閉 windows 資源管理器中的數值排序”,雙擊開啟配置視窗,將未配置改為已啟用,然後確定退出。

這樣可以關閉數值排序  回到**資料夾,重新整理一下就會看到所有**都按照字母序排列了。  如果一段時間後不適應新的排序規則,可以再次通過組策略編輯器將“關閉 windows 資源管理器中的數值排序”改為未配置或已禁用,將排序方式恢復原樣。

4樓:好程式設計師

工具:電腦

方法:首先開啟桌面上的此電腦,然後選擇檢視

2、接下來選擇排序方式,在這裡就可以看到預設的排序方式了

windows檔案按名稱排序的規則

5樓:清風悠然悅讀群書

在windows的資源管理器中,不管檔案(或資料夾)名是英文還是中文,當我專

6樓:吾心激盪

數字是按bai數值大小由小到大排列,du

同等大小按zhi前導零數目由多到dao

少排列。內也就是說第一個例子

容是對的,你之前出現的情況應該是策略組中更改過了(win 7可以在組策略中啟用“關閉windows資源管理器中的數值排序”將此規則更改為按每個數字位依次比較排序,其它版本未確認)

7樓:山磊

是根據數字大小和字母先後排的,

windows資源管理器怎麼開啟

計算機等級考試指導 介紹幾個啟動windows資源管理器的方法 電腦人人有經驗 使用windows e快捷鍵,調出資源管理器。 建彤慈曉霜 簡單通俗的來說你看到的螢幕上顯示的東西除了檔案資料之外的全都算是資源管理器,資源管理器分為2個概念,一個是可見的,如 我的電腦 開啟之後看到的是檔案目錄,一種是...

資源管理器 程序,資源管理器由什麼程序管理

資源管理器由什麼程序管理 你好!檔案資源管理器是一項系統服務,負責管理資料庫 持續訊息佇列或事務性檔案系統中的永續性或持續性資料。資源管理器儲存資料並執行故障恢復。程序 檔案在系統盤的下的windows目錄裡。希望能幫助你!資源管理器中有那些程序各是什麼意思?xp的系統程序 這是子系統伺服器程序,負...

電腦的資源管理器在哪,電腦資源管理器在哪?

鼎成科技大興店 電腦的資源管理器這概念到後期有點模糊了,實際上開啟電腦,進入到桌面,其實也算作開啟了資源管理器,在我的電腦上右擊選擇管理也算開啟資源管理器,而雙擊開啟我的電腦,也算作資源管理器,在控制面板中的選項,也算資源管理器,開始選單也算資源管理器,個人認為最重要的最標準的資源管理器應該是win...