小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

二進(jìn)制文件和文本文件到底有什么區(qū)別

 Ralf_Jones 2008-01-17
二進(jìn)制文件和文本文件到底有什么區(qū)別(權(quán)威)     CSDN Blog推出文章指數(shù)概念,文章指數(shù)是對Blog文章綜合評分后推算出的,綜合評分項(xiàng)分別是該文章的點(diǎn)擊量,回復(fù)次數(shù),被網(wǎng)摘收錄數(shù)量,文章長度和文章類型;滿分100,每月更新一次。

從文件編碼的方式來看,文件可分為ASCII碼文件和二進(jìn)制碼文件兩種。  
   
    ASCII文件也稱為文本文件,這種文件在磁盤中存放時(shí)每個(gè)字符對應(yīng)一個(gè)字節(jié),用于存放對應(yīng)的ASCII碼。例如,數(shù)5678的存儲(chǔ)形式為:  
  ASC碼:    00110101   00110110   00110111   00111000  
       ↓       ↓    ↓      ↓  
  十進(jìn)制碼:   5     6    7    8   共占用4個(gè)字節(jié)。ASCII碼文件可在屏幕上按字符顯示,   例如源程序文件就是ASCII文件,用DOS命令TYPE可顯示文件的內(nèi)容。   由于是按字符顯示,因此能讀懂文件內(nèi)容。  
   
    二進(jìn)制文件是按二進(jìn)制的編碼方式來存放文件的。   例如,   數(shù)5678的存儲(chǔ)形式為:   00010110   00101110只占二個(gè)字節(jié)。二進(jìn)制文件雖然也可在屏幕上顯示,   但其內(nèi)容無法讀懂。C系統(tǒng)在處理這些文件時(shí),并不區(qū)分類型,都看成是字符流,按字節(jié)進(jìn)行處理。   輸入輸出字符流的開始和結(jié)束只由程序控制而不受物理符號(如回車符)的控制。   因此也把這種文件稱作“流式文件”。  

 

16樓  liujingfu123   (Oh_My_GoD) 五級用戶 該版得分小于等于5000分,大于2000分  回復(fù)于 2004-12-17 08:49:17  得分 10

我也說兩句吧:(摘抄自C語言之家)  
    
            什么是流(stream)?  
   
          流是程序輸入或輸出的一個(gè)連續(xù)的字節(jié)序列,設(shè)備(例如鼠標(biāo)、鍵盤、磁盤、屏幕、調(diào)制解調(diào)器和打印機(jī))的輸入和輸出都是用流來處理的。在C語言中,所有的流均以文件的形式出現(xiàn)----不一定是物理磁盤文件,還可以是對應(yīng)于某個(gè)輸入/輸出源的邏輯文件。C語言提供了5種標(biāo)準(zhǔn)的流,你的程序在任何時(shí)候都可以使用它們,并且不必打開或關(guān)閉它們。以下列出了這5種標(biāo)準(zhǔn)的流。  
  ------------------------------------------------  
          名稱                     描     述                         例     子  
  ------------------------------------------------  
          stdin                 標(biāo)準(zhǔn)輸入                       鍵盤  
          stdout               標(biāo)準(zhǔn)輸出                         屏幕  
          stderr               標(biāo)準(zhǔn)錯(cuò)誤                         屏幕  
          stdprn               標(biāo)準(zhǔn)打印機(jī)                     LPT1端口  
          stdaux               標(biāo)準(zhǔn)串行設(shè)備                 COM1端口  
  ------------------------------------------------  
          需要注意的是,stdprn和stdaux并不總是預(yù)先定義好的,因?yàn)長PT1和COM1端口在某些操作系統(tǒng)中是沒有意義的,而stdin,stdout和stderr總是預(yù)先定義好的。此外,stdin并不一定來自鍵盤,stdout也并不一定顯示在屏幕上,它們都可以重定向到磁盤文件或其它設(shè)備上。  
   
          文本模式(textmode)和二進(jìn)制模式(binarymode)有什么區(qū)別?  
   
          流可以分為兩種類型:文本流和二進(jìn)制流。文本流是解釋性的,最長可達(dá)255個(gè)字符,其中回車/換行將被轉(zhuǎn)換為換行符“\n”,(如果以"文本"方式打開一個(gè)文件,那么在讀字符的時(shí)候,系統(tǒng)會(huì)把所有的"\r\n"序列轉(zhuǎn)成"\n",在寫入時(shí)把"\n"轉(zhuǎn)成"\r\n"            archim ‘s opinion    )。二進(jìn)制流是非解釋性的,一次處理一個(gè)字符,并且不轉(zhuǎn)換字符。          
          通常,文本流用來讀寫標(biāo)準(zhǔn)的文本文件,或者將字符輸出到屏幕或打印機(jī),或者接受鍵盤的輸入;而二進(jìn)制流用來讀寫二進(jìn)制文件(例如圖形或字處理文檔),或者讀取鼠標(biāo)輸入,或者讀寫調(diào)制解調(diào)器
。
4樓  yhz   (耗子) 二級用戶 該版得分小于等于500分,大于100分  回復(fù)于 2004-10-20 20:24:24  得分 10

如果用文本方式打開文件,會(huì)把“0D   0A”自動(dòng)變換成“\n”來存在內(nèi)存中。寫入的時(shí)候反向處理。  
  而二進(jìn)制方式打開的話,就不會(huì)有這個(gè)過程。  
   
  但是,Unicode/UTF/UCS格式的文件,必須用二進(jìn)制方式打開和讀寫。

    本站是提供個(gè)人知識管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多