A. 現手頭上有上百份utf-8格式的xml文件,都需要去掉bom頭以適應unix環境,求教如何用vba進行修改
請貼代碼,或者把代碼發給QQ 312943362幫你解決
B. 什麼是Bom頭 怎樣去除PHP文件的Bom頭
方法一:用Ultraedit或Editplus打開文件,另存為無Bom的utf-8文件方法二:用Dreamweaver去除Bom頭
菜單–修改–頁面屬性 或者ctrl+j打開頁面屬性窗口,點選「標題/編碼」去掉「包括Unicode簽名Bom」前的勾
有Bom的文件太多?這樣太麻煩?當然有更好的方法!方法三:用php文件批量去除bom頭 將以下這段代碼保存為php文件,上傳到伺服器,用瀏覽器訪問它!<?phpif (isset($_GET['dir'])){ //設置文件目錄
$basedir=$_GET['dir'];}else{$basedir = '.';}$auto = 1;checkdir($basedir);
function checkdir($basedir){
if ($dh = opendir($basedir)) {
while (($file = readdir($dh)) !== false) {
if ($file != '.' && $file != '..'){
if (!is_dir($basedir./.$file)) {
echo filename: $basedir/$file .checkBOM($basedir/$file). ;}else{$dirname = $basedir./.$file;
checkdir($dirname);}}}closedir($dh);}}function checkBOM ($filename) {
global $auto;
$contents = file_get_contents($filename);
$charset[1] = substr($contents, 0, 1);
$charset[2] = substr($contents, 1, 1);
$charset[3] = substr($contents, 2, 1);
if (ord($charset[1]) == 239 && ord($charset[2]) == 187 && ord($charset[3]) == 191) {
if ($auto == 1) {
$rest = substr($contents, 3);
rewrite ($filename, $rest);
return (<font color=redBOM found, automatically removed.</font);} else {return (<font color=redBOM found.</font);}}else return (BOM Not Found.);}function rewrite ($filename, $data) {
$filenum = fopen($filename, w);
flock($filenum, LOCK_EX);
fclose($filenum);}?還用記事本保存?那你真是智商捉急了!
C. 在字元編碼格式選項里UTF-8(無BOM)是什麼意思呀
BOM——ByteOrderMark,就是位元組序標記
在UCS編碼中有一個叫做」ZEROWIDTHNO-BREAKSPACE「的字元,它的編碼是FEFF。而FFFE在UCS中是不存在的字元,所以不應該出現在實際傳輸中。
UCS規范建議我們在傳輸位元組流前,先傳輸字元」ZEROWIDTHNO-BREAKSPACE「。
如果接收者收到FEFF,就表明這個位元組流是大位元組序的;如果收到FFFE,就表明這個位元組流是小位元組序的。因此字元」ZEROWIDTHNO-BREAKSPACE「又被稱作BOM。
UTF-8不需要BOM來表明位元組順序,但可以用BOM來表明編碼方式。納叢清字元」ZEROWIDTHNO-BREAKSPACE「的UTF-8編碼是EFBBBF。所以如果接收者收到以EFBBBF開頭的位元組流,就知道這是UTF-8編碼了。
在utf-8編碼文件中BOM在文件頭部,佔用三個位元組,用來標識該文件屬於utf-8編碼,現在已經有很多軟體識別BOM頭,但還是有些不能識別BOM頭,比如PHP就不能識別BOM頭,這也就是用記事本編輯utf-8編碼的PHP文件後,就會報錯的原因。
在windows環境下,用記事本打開任何一個文本文件,另存為utf-8格式後,這樣文件就自動被加上了BOM頭信息。可以很明顯的看出,含BOM頭的文件多出三個位元組efbbbf。notepad++會自動添加為帶Bom的utf8。
UTF-8
UTF-8(8-)是一種針對Unicode的可變長度字元編碼,又稱萬國碼,由KenThompson於1992年創建。現在已經標准化為RFC3629。UTF-8用1到6個位元組編碼Unicode字元。用在網頁上鄭頃可以統一頁面顯示中文簡體繁體及其它語言(如英文,日文,韓文)。
優點
UTF-8編碼可以通過屏蔽位和移位操作快速讀寫。字元串比較時strcmp()和wcscmp()的返回結果相同,因此使排序變得更加容易。位元組FF和FE在UTF-8編碼中永遠不會出現,因此他們可以用來表明UTF-16或UTF-32文本(見BOM)UTF-8是位元組順序無關的。它的位元組順序在所有系統中都是一樣的,因此它實際上並不需要BOM。
缺點
你無法從UNICODE字元數判斷出UTF-8文本的位元組數,因為UTF-8是一種變長編碼它需要用2個位元組編碼那些用擴展ASCII字元集只需1個位元組的字元ISOLatin-1是UNICODE的子集,但不是UTF-8的子集8位字元的UTF-8編碼會被email網關過濾,因為internet信息最初設計為7位ASCII碼。因此產生了UTF-7編碼。UTF-8在它的表示中使用值100xxxxx的幾率超過50%,而現存的實現如ISO2022,4873,6429,和8859系統,會把它錯認為是C1控制碼。因此產生了UTF-7.5編碼。
UFT-8-網路
D. 什麼是BOMBOM是做什麼的
BOM全稱為Bill of Material,中文名字是物料清單,它採用計算機輔助企業生產管理,首先要使計算機能夠讀出企業所製造的產品構成和所有要涉及的物料,為了便於計算機識別,必須把用圖示表達的產品結構轉化成某種數據格式,這種以數據格式來描述產品結構的文件就是物料清單,即是BOM。
BOM是定義產品結構的技術文件,因此,它又稱為產品結構表或產品結構樹。在某些工業領域,可能稱為「配方」、「要素表」或其它名稱。
BOM是PDM/MRPⅡ/ERP信息化系統中最重要的基礎數據,其組織格式設計和合理與否直接影響到系統的處理性能,因此,根據實際的使用環境,靈活地設計合理且有效的BOM是十分重要的。
(4)bom頭文件擴展閱讀:
BOM的其他作用:
1、BOM是ERP系統識別各個物料的工具。
2、BOM是MRP運行的最重要的基礎數據之一,是MPS轉變成MRP的關鍵環節。
3、各個物料的工藝路線通過BOM可以生成最終產品項目的工藝路線。
4、BOM是物料采購的依據。
5、BOM是零組件外協加工的依據。
E. 怎麼去掉utf-8 的bom頭
去掉utf-8的BOM的方來法自如下: 1、editplus去BOM頭的方法 編輯器調整為UTF8編碼格式後,保存的文件前面會多出一串隱藏的字元(也即是BOM),用於編輯器識別這個文件是否是以UTF8編碼。 運行Editplus,點擊工具,選擇首選項,選中文件,UTF-8標識選...
F. 什麼是bom,bom有哪些類型
1、物料清單(Bill of Materials,簡稱BOM)是描述企業產品組成的技術文件。在加工資本式行業,它表明了產品的總裝件、分裝件、組件、部件、零件、直到原材料之間的結構關系,以及所需的數量。
在化工、制葯和食品行業產品組成則對主要原料、中間體、輔助材料及其配方和所需數量的說明。BOM是將用圖表示的產品組成改用數據表格的形式表示出來,它是MRPII系統中計算MRP過程中的重要控制文件。
2、BOM(Byte Order Mark),位元組順序標記,出現在文本文件頭部,Unicode編碼標准中用於標識文件是採用哪種格式的編碼。
BOM採用UTF-8編碼。幾乎所有的文本編輯軟體都可以顯示並編輯UTF-8編碼的文件。但是很遺憾,其中很多軟體的表現並不理想。
3、BOM(位元組順序標記(ByteOrderMark))BOM(Byte Order Mark),位元組順序標記,出現在文本文件頭部,Unicode編碼標准中用於標識文件是採用哪種格式的編碼。
4、BOM(Browser Object Model) 是指瀏覽器對象模型,是用於描述這種對象與對象之間層次關系的模型,瀏覽器對象模型提供了獨立於內容的、可以與瀏覽器窗口進行互動的對象結構。BOM由多個對象組成,其中代表瀏覽器窗口的Window對象是BOM的頂層對象,其他對象都是該對象或液的子對象。
5、BOM(韓國組合BoM)韓國人氣組合,2011年由Y2Y Contents娛樂公司推出的,由Raewon、Sechang、Tagoon、Yua組成的四人美聲團體BoM(Blooming of our Music),於2011年7月以主打MV單曲《니가없이》(沒有你)正式出道。
G. UE保存XML文件如何看有沒有BOM
UE保存XML文件看有沒有BOM方法:
1、ditplus看BOM頭的方法:
編輯器調整為UTF8編碼格式後,保存的文件前面會多出一串隱藏的字元(也即是BOM),用於編輯器識別這個文件是否是以UTF8編碼。運行Editplus,點擊工具,弊皮歲選擇首選項,選中文件,UTF-8標識選擇 總是刪除簽名,然後對PHP文件編輯和保存後的PHP文件是不帶BOM的。
2、ultraedit看bom頭辦法:
打開文件後,另存為選項的編碼格式里選擇(utf-8 無bom頭),確定就好。
保存為UTF-8無BOM格式方法:
如果模板採用包含的方法包含多個UTF-8文件時,則模板需要選擇UTF-8無BOM格式保存格式。
2. 用mb_convert_encoding / iconv 把gb2312文件轉換成UTF-8文件時,默認設置是不帶BOM的。不帶BOM可能出握纖現上述亂碼問題,但是帶 BOM,對於PHP的include文件要小心,會在PHP位元組流前面多出EF BB BF,提前輸出到顯示器有可能會帶來程序錯誤。一個解決方案是凡是被include的文件都保存為ANSI,主文件可以是UTF-8。
3. 如果中文頁面在html head標記中將title標記租睜放在<meta http-equiv="content-type" content="text/html; charset=UTF-8″ />前面會導致頁面空白。所以UTF-8頁面應該使用標准順序為:
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />;
<meta http-equiv="content-language" content="zh-CN" />;
<meta content="index,follow" />。
H. java 檢查檢測文件是否有bom頭
下面這個可以將攜雹橡bom頭過濾肆嫌
byte[] allbytes = line.getBytes("UTF-8");
for (int i=0; i < allbytes.length; i++)
{
int tmp = allbytes[i];
String hexString = Integer.toHexString(tmp);
// 1個byte變成16進制的,辯旁只需要2位就可以表示了,取後面兩位,去掉前面的符號填充
hexString = hexString.substring(hexString.length() -2);
System.out.print(hexString.toUpperCase());
System.out.print(" ");
}
I. python txt去掉bom頭怎麼去
windows自帶的文檔編輯器會插入一個bom頭,如果只有一個txt文件的話,用中虛升其他的文檔編輯器,比如UE,打開,再另存下譽侍去bom的格式就可以了;如果是多個文件,那就把先文件內容全讀出來,這樣會把bom的數據也讀出,找出開頭的字賣老符的位置,再用切片方法把數據切出來,這樣,就把bom頭去掉了。
J. bom頭 用notepad++ 如何去掉
在notepad++里點擊首選項->新建->編冊畝亂碼,選擇utf-8(無bom),然耐升後你再新建一個文檔,將文件復制進去,州檔看能不能解決。