windows剪下板在複製和貼上的時候進行了字符集轉換嗎?

時間 2021-05-29 22:29:30

1樓:mike

感謝vczh的回答,這個問題困擾我好幾天了。不過我仔細想了想,又出現了新的問題。我從乙個網頁上覆制了乙個特殊的符號,西洋棋符號,這個符號在unicode字符集中有,在ANSI字符集中沒有。

我試著將他複製到ANSI編碼的txt中,以下是結果。

問題:如果從剪下板中複製到txt的是unicode編碼,那麼ANSI格式的txt是怎麼顯示該unicode字元的?因為ANSI格式根本不包含這個字元。

可能的原因一:txt中的所有編碼格式在顯示的時候都進行了一次轉換,它將所有格式都轉換成了unicode格式進行顯示,只在最後儲存的時候轉換成了設定的格式,在這裡為ANSI。所以剪下板中的unicode字元能夠在工作區顯示,但是最後儲存的時候txt程式無法再將該unicode字元轉換成ANSI。

原因一的衍生問題:如果txt用unicode格式顯示工作區內容,那麼如果用ctrl+c複製了一段GBK編碼的漢字在拷貝到txt文件中,那麼肯定會顯示亂碼。實際上txt並不會,那麼可能1:

剪下板在複製的時候將所有編碼都轉換成了unicode編碼,然後再複製到txt中。可能2:txt根據剪下板中的字元編碼資訊,將GBK轉換成了unicode進行顯示。

可能的原因二:txt工作區中顯示的只是最後結果,比如字元點陣的資訊本身。所以在txt工作區中貼上的並不是字元編碼而是字元編碼對映後的字元點陣資訊。

最後儲存的時候txt並不能再根據該字元的點陣資訊對映到ANSI字元編碼的某一段編碼,所以無法以ANSI格式儲存該字元。那就說明windows剪下板在複製所有內容時,複製的是顯示資訊本身,而不是字元編碼本身。

由於個人並非計算機從業人員,無法弄清到底究竟是以上哪種原因,希望有專業人士能幫我確認,我個人更傾向於原因二,因為原因二實現起來更容易,也能解釋我遇到的所有現象。

分享一下你們的剪下板嗎?

star drift 經一場大夢,夢中見滿眼山花如翡,如見故人,喜不自勝。終有一天,你會跨過靜謐無聲的洗墨江,離開群山環抱的舊桃源,來到無邊陰霾的夜空之下。你會目睹無數不可攀爬之山相繼傾覆,不可逾越之海乾涸成田,你要記得,你的命運懸在刀尖上,而刀尖須得永遠向前。願你在冷鐵捲刃前,得以窺見天光。再長的...

在 MacBook Pro 上裝 Windows 8 1 最好的方案是什麼?

方進鋒 的這個 http www.通過虛擬機器軟體抓取 Bootcamp 的系統映象來執行 Windows 系統的方案可能會遇到一些問題,需要注意。各位師兄要知道,bootcamp環境下以及任何virtual machine 包括PD5及Fusion等 環境下,硬體都是完全不同的。故此,window...

如何理解土力學土體在極限剪下強度之後呈塑性的現象?

潛心靜悟 藕斷絲連。藕被掰斷屬達到強度,絲還連著表明有殘餘應力。當然,這裡的藕是脆性材料,每個藕的 骨架 與可以視為土骨架,如果不是脆性而是延性的,那麼就是破壞前的土骨架。連著的絲絲可以視為部分土骨架失去承載力之後的情況,能受力,但由於損傷的存在,承載力逐漸降低,變形發展迅速。達到強度後,部分土骨架...