簡體   English   中英

什么是替代字符以及如何在Windows中處理它

[英]What is substitute character and how to process it in windows

我從aix獲得一個文本文件,並嘗試在Windows上處理它

但有些行包含奇怪的字符 子角色 ,在ultraedit中,它顯示為 箭頭

當fgets函數遇到該行時,它會引發一個錯誤並停止繪制。 然后它拒絕繼續,即使我強行在遇到線后再次運行fgets。

角色的六角代碼是1A

ASCII表中對此字符的解釋是替換字符,用於替換設備上無法表示的字符。

這意味着什么

  1. 我有一個特定的AIX特性,無法在Windows上處理它。
  2. 這是否僅在跨平台文件的情況下發生?

謝謝!

有幾個問題。

如果使用fopen"r"模式,文件將以文本模式打開,然后ASCII字符0x1b將被解釋為文件結束字符。 此外,如果您的文件來自aix,那么行結尾肯定是“\\ n”(0x10)而不是Windows上的“\\ r \\ n”(0x13 0x10),並且fgets僅將“\\ r \\ n”作為行結尾進行識別。

你需要通過使用fgetc函數逐個字符地讀取文件來實現自己的fgets函數,並且必須使用"rb"模式而不是"r"模式來fopen aix文件。

你的新的fgets類似的功能應該是不超過5條或6線長。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM