国产肉体XXXX裸体137大胆,国产成人久久精品流白浆,国产乱子伦视频在线观看,无码中文字幕免费一区二区三区 国产成人手机在线-午夜国产精品无套-swag国产精品-国产毛片久久国产

博客專(zhuān)欄

EEPW首頁(yè) > 博客 > 解決Linux與Windows文件顯示亂碼的問(wèn)題

解決Linux與Windows文件顯示亂碼的問(wèn)題

發(fā)布人:電子禪石 時(shí)間:2020-01-04 來(lái)源:工程師 發(fā)布文章

重點(diǎn):如果windows 下和虛擬機(jī)共享文件,先將文件移到其他位置使用notepad++ 改變編碼模式為UTF-8,然后復(fù)制到共享目錄,然后用編輯器打開(kāi)中文就不是亂碼了。

問(wèn)題:

  • 在Windows下用matlab寫(xiě)的代碼(.m)文件復(fù)制到Linux(Ubuntu)下,注釋的中文全是亂碼

  • 反之,也是一樣

原因:
Windows下默認(rèn)使用的是GB2312編碼,Linux默認(rèn)使用的是UTF-8。 所以在Windows下產(chǎn)生的代碼是GB2312編碼,在Linux下當(dāng)然識(shí)別為亂碼 ; 反之,同理亂碼 。
解決方法:

1、直接對(duì)文件編碼格式的轉(zhuǎn)碼,需要不斷使用命令
使用linux下的iconv 命令改變文件的編碼:
test1.m由GB2312轉(zhuǎn)換成UTF-8(windows下matlab的代碼在linux下運(yùn)行)

  iconv  -f  GB2312  -t  UTF-8  test1.m  -o  test1.m    

test2.m由UTF-8轉(zhuǎn)換成GB2312(linux下matlab的代碼在windows下運(yùn)行)

  iconv -f  UTF-8  -t  GB2312  test2.m  -o  test2.m

如果文件過(guò)多,要進(jìn)行批處理,可用如下編寫(xiě)的shell腳本批量轉(zhuǎn)換編碼。(腳本來(lái)自linux公社,點(diǎn)擊我立刻下載)
使用方法: 將該腳本放在需要進(jìn)行轉(zhuǎn)換的文件夾中, 執(zhí)行腳本,可以將當(dāng)前目錄和其子目錄下的所有文件轉(zhuǎn)換成指定的編碼方法 。
執(zhí)行如下:
由GB2312轉(zhuǎn)換成UTF-8

  ./convertMatlab.sh   win

由UTF-8轉(zhuǎn)換成GB2312

  ./convertMatlab.sh  linux

提示: 普通用戶(hù)沒(méi)有執(zhí)行權(quán)限,需要用chmod +x convertMatlab.sh 增加執(zhí)行權(quán)限
附:Shell腳本(convertMatlab.sh)
#!/bin/bash
# 功能:將GB2312文件 轉(zhuǎn)換成 UTF-8【解決Windows文件復(fù)制到Linux之后亂碼問(wèn)題】
#read -p "Input Path:" SPATH
SPATH="."
#echo $SPATH
POSTFIX="m"
param1="$1"
if [ "$param1" == "win" ];then
   sys1="Linux"
   sys2="Windows"
   format1="UTF-8"
   format2="GB2312"
elif [ "$param1" == "linux" ];then
   sys1="Windows"
   sys2="Linux"
   format1="GB2312"
   format2="UTF-8"
else
   echo "************** 功能 ************"
   echo "  解決matlab腳本文件在Windows和Linux中移動(dòng)時(shí)出現(xiàn)的亂碼問(wèn)題!"
   echo "  將該腳本復(fù)制到程序文件夾中,運(yùn)行該腳本,它會(huì)對(duì)當(dāng)前文件夾及子文件夾中的所有*.m文件進(jìn)行格式轉(zhuǎn)換,解決亂碼問(wèn)題。"
   echo "  轉(zhuǎn)換到 Linux 的命令: $0 linux"
   echo "  轉(zhuǎn)換到 Window的命令: $0 win"
   exit
fi
echo "********************************"
echo "  格式轉(zhuǎn)換中......"
echo "  從"$sys1"("$format1") 轉(zhuǎn)換到 "$sys2"("$format2")"
echo "********************************"

FILELIST(){
filelist=`ls $SPATH `
for filename in $filelist; do
    if [ -f $filename ];then
        #echo File:$filename
        #echo "${filename#*.}"
        EXTENSION="${filename#*.}"
        #echo $EXTENSION
        if [ "$EXTENSION" == "$POSTFIX" ];then
           #echo "${filename%%.*}"
           echo Processing: $filename
           iconv -f $format1 -t $format2 $filename -o $filename
           #iconv -f GB2312 -t UTF-8 $filename -o $filename
        fi
    elif [ -d $filename ];then
        cd $filename
        SPATH=`pwd`
        #echo $SPATH
        FILELIST
        cd ..
    else
        echo "$SPATH/$filename is not a common file."
    fi
done
}
cd $SPATH
FILELIST
echo "======== Convert Done. ========"
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
2、設(shè)置編輯器的編碼方式,一步到位(但也取決于你的編輯器或者IDE)
VIM:
用editplus時(shí),用“另存為…”保存文件時(shí),可以手工選擇編碼類(lèi)型:ANSI、Unicode、UTF-8等。在用VIM時(shí)如何設(shè)置文件的編碼類(lèi)型呢。在vim中,缺省情況下都會(huì)按ANSI方式保存,有時(shí)我們用vim編寫(xiě)一些jsp文件時(shí),一不小心,就容易犯錯(cuò)誤了,因?yàn)樵谖覀兊拈_(kāi)發(fā)團(tuán)隊(duì)中,是統(tǒng)一使用utf-8編碼的,如果用ansi方式保存了,在網(wǎng)頁(yè)的顯示時(shí)就會(huì)出現(xiàn)亂碼問(wèn)題。
  所以如果不清楚自己的缺省編碼設(shè)置,可以手工輸入設(shè)置命令:
  :set fileencoding=utf-8
  然后再保存就行了:
  :w
  這樣無(wú)論之前的編碼是什么,都會(huì)轉(zhuǎn)換成utf-8保存。
  如果希望缺省保存方式就是utf-8,就需要在_vimrc中加入以下設(shè)置:
  set encoding=utf-8
  set fileencoding=utf-8
  set fileencodings=ucs-bom,utf-8,chinese
  把這三行放在_vimrc的最開(kāi)始的位置比較好。
參考:http://www.wangchao.net.cn/bbsdetail_1631847.html
           關(guān)于vim中編碼的細(xì)節(jié)問(wèn)題,推薦另一篇文章,原文地址:http://edyfox.codecarver.org/html/vim_fileencodings_detection.html
Nodepad++:

在nodepad++上修改一下格式里面的編碼方式中文注釋沒(méi)有亂碼了 

1.jpg————————————————
參考:http://forum.ubuntu.org.cn/viewtopic.php?f=21&t=133898
         https://blog.csdn.net/awkwardgirl/article/details/24018427原文鏈接:https://blog.csdn.net/edward_zcl/article/details/80180979


*博客內(nèi)容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀點(diǎn),如有侵權(quán)請(qǐng)聯(lián)系工作人員刪除。



關(guān)鍵詞:

相關(guān)推薦

技術(shù)專(zhuān)區(qū)

關(guān)閉