C 處理文字檔案

2021-06-08 08:53:30 字數 4414 閱讀 4099

filestream   fs   =   new   filestream   (   "c:\\file.txt"     ,   filemode.open   ,   fileaccess.read   )   ;

streamreader m_streamreader = new streamreader ( fs ) ;

//使用streamreader類來讀取檔案

m_streamreader.basestream.seek ( 0 , seekorigin.begin ) ;

// 從資料流中讀取每一行,直到檔案的最後一行,並在richtextbox1中顯示出內容

this.richtextbox1.text = "" ;

string strline = m_streamreader.readline ( ) ;

while ( strline != null )

//關閉此streamreader物件

m_streamreader.close ( ) ;

//建立乙個檔案流,用以寫入或者建立乙個streamwriter

filestream fs = new filestream ( "c\\file.txt" , filemode.openorcreate , fileaccess.write ) ;

streamwriter m_streamwriter = new streamwriter ( fs ) ;

m_streamwriter.flush ( ) ;

// 使用streamwriter來往檔案中寫入內容

m_streamwriter.basestream.seek ( 0 , seekorigin.begin ) ;

// 把richtextbox1中的內容寫入檔案

m_streamwriter.write ( richtextbox1.text ) ;

//關閉此檔案

m_streamwriter.flush ( ) ;

m_streamwriter.close ( ) ;

從上面這二個**可以,寫入資料比起讀取資料要顯得容易些。  

(3).如何實現列印預覽:  

string   strtext   =   richtextbox1.text   ;

stringreader myreader = new stringreader ( strtext ) ;

printpreviewdialog printpreviewdialog1 = new printpreviewdialog ( ) ;

printpreviewdialog1.document = theprintdocument ;

printpreviewdialog1.formborderstyle = formborderstyle.fixed3d ;printpreviewdialog1.showdialog ( ) ;

(4).如何列印檔案:  

theprintdocument.print   (   )   ;//其中theprintdocument是"printdocument"類的乙個物件

下列**是設定列印內容即列印richtextbox1中的內容:  

float   linesperpage   =   0   ;

float yposition = 0 ;

int count = 0 ;

float leftmargin = ev.marginbounds.left ;

float topmargin = ev.marginbounds.top ;

string line = null ;

font printfont = richtextbox1.font ;

solidbrush mybrush = new solidbrush ( color.black ) ;

//計算每一頁列印多少行

linesperpage = ev.marginbounds.height / printfont.getheight ( ev.graphics ) ;

//重複使用stringreader物件 ,列印出richtextbox1中的所有內容

while ( count < linesperpage && ( ( line = myreader.readline ( ) ) != null ) )

if ( line != null )

ev.hasmorepages = true ;

else

ev.hasmorepages = false ;

mybrush.dispose ( ) ;

三.   用c#處理文字檔案的完整源程式**(control.cs):  

掌握了上面這些關鍵步驟,就可以方便的得到用c#來處理文字檔案的乙個完整的源程式,具體如下:

using   system   ;

using system.drawing ;

using system.collections ;

using system.componentmodel ;

using system.windows.forms ;

using system.data ;

using system.io ;

using system.drawing.printing ;

public class form1 : form

//清除程式中使用多的資源

protected override void dispose ( bool disposing )

}base.dispose ( disposing ) ;

}private void initializecomponent ( )

static void main ( )

private void button1_click ( object sender , system.eventargs e )

//關閉此streamreader物件

m_streamreader.close ( ) ;

} }

catch ( exception em )

}private void button3_click ( object sender , system.eventargs e )

}catch ( exception em )

}private void button4_click ( object sender , system.eventargs e )

//預覽列印文件

private   void   button2_click   (   object   sender   ,   system.eventargs   e   )

catch ( exception exp )

}//列印richtextbox1中的內容

private void button5_click ( object sender , system.eventargs e )

}protected void theprintdocument_printpage ( object sender , printpageeventargs ev )

if ( line != null )

ev.hasmorepages = true ;

else

ev.hasmorepages = false ;

mybrush.dispose ( ) ;

}}

C 處理文字檔案

文字檔案是一種常用的檔案格式,所以如何處理文字檔案也就成為程式設計的乙個重點。本文就來 一下用c 是如何來處理文字檔案。其內容重點就是如何讀取文字檔案內容 如何改變文字檔案的內容,以及如何用c 來實現對讀取後的文字檔案的列印預覽和列印。一 本文程式設計和執行的軟體環境 1 微軟公司視窗2000伺服器...

C 處理文字檔案

文字檔案是一種常用的檔案格式,所以如何處理文字檔案也就成為程式設計的乙個重點。本文就來 一下用c 是如何來處理文字檔案。其內容重點就是如何讀取文字檔案內容 如何改變文字檔案的內容,以及如何用c 來實現對讀取後的文字檔案的列印預覽和列印。一 本文程式設計和執行的軟體環境 1 微軟公司視窗2000伺服器...

C 處理文字檔案

文字檔案是一種常用的檔案格式,所以如何處理文字檔案也就成為程式設計的乙個重點。本文就來 一下用c 是如何來處理文字檔案。其內容重點就是如何讀取文字檔案內容 如何改變文字檔案的內容,以及如何用c 來實現對讀取後的文字檔案的列印預覽和列印。1 微軟公司視窗2000伺服器版 2 net framework...