程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> 腳本編程語言-awk腳本處理文本遇見→符號,二進制為0x1a,當做EOF的問題

腳本編程語言-awk腳本處理文本遇見→符號,二進制為0x1a,當做EOF的問題

編輯:編程綜合問答
awk腳本處理文本遇見→符號,二進制為0x1a,當做EOF的問題

111 222 333
444 555 666→
777 888 999

BEGIN{IGNORECASE = 1; FS = " "; RS = "\n"}
{
print "第"NR"條記錄共"NF"個字段",$0
}

上面→ 二進制代碼為0x1a,被awk當成EOF處理,隨意結果是
第1條記錄共3個字段 111 222 333
第2條記錄共3個字段 444 555 666
第三行讀不出來,因為遇見那個箭頭符號,然後當成EOF,之後都不處理了。

該怎麼解決這個問題,讓代碼能忽視掉那個箭頭(0x1a)呢
求大神們,幫幫忙

最佳回答:


十六進制的 0x1a 是文本文件的文件結束符,因為是不可打印字符,本來就不該在文本文件中出現
文本文件中只應該存在以下控制符:0x09 制表符、0x0a 換行符和 0x0d 回車符(windows才有)
若要忽略對他的處理,需要以二進制方式打開文件

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved