⑴ 可以寫數據到二進制文件中的是什麼類
C#使用BinaryWrite r類寫入二進制文件Sys te m.IO命名空間提供了B inaryRead er類和B ina r yWrite r類,用來完成讀寫二進制數據的操作。但是這兩個類本身並不執行流。而是提供其他對象流的包裝。
寫入二進制文件、
B inaryWr ite r類用於從C#變數向指定流寫入二進制數據、該類可以把C#數據類型轉換成可以寫到底層流的一系列位元組。
B ina ryWrite r類常用方法。
Wr it e方法、將值寫入流、有很多重載版本、適用於不同的數據類型。
Flush方法、清除緩存區。
Close方法,關閉數據流。
下面介紹的C#本地讀寫二進制文件,二進制文件指保存在物理磁碟的一個文件。第一步。讀寫文件轉成流對象。其實就是讀寫文件流、FileStream對象。
在Sys te m.IO命名空間中、 。
File、 FileInfo、 F ile Stream這三個類可以將打開文件,並變成文件流。下面是引用微軟對File、 F ileInfo、 FileStre am的介紹。
System.IO.File類提供用於創建、復制、刪除、移動和打開文件的靜態方法,並協助創建File Stream對象。
System.IO.File Info類提供創建、復制、刪除、移動和打開文件的實例方法,並且幫助創建F il e S tre am對象。無法繼承此類。
Sys te m.IO.F ile Stream類公開以文件為主的Stream、既支持同步讀寫操作、也支持非同步讀寫操作。
第二步、讀寫流。讀寫二進制文件用System.IO.BinaryReader和
Syste m.IO.B inaryWriter類,讀寫文本文件用Syste m.IO.TextRe ader
和S ys te m.IO.Te xtW r iter類。
B ina ryWrite r類將二進制數據寫入文件示例、using System;usingSystem.IO;using S ystem.Text;class Program
{static void Main(string[]args)
{
C onso le.Write Line("請輸入文件名, ");
1/2頁
string filename=Console.ReadL
⑵ 如何將二進制數據以追加的方式以二進制寫入文件
使用fseek()定位到相應的位置,使用fread()、fwrite()讀寫文件即可。下面是一個在1.txt的文件末尾追加hello world的示例: #include #include int main(){FILE *fp = fopen("1.txt", "a+");if (fp==0) { printf("can't open file\n"); return 0;
⑶ 怎麼把二進制數據寫到文件里
for
循環是用來向
用
FileStream
類新建的
二進制文件
w寫入
二進制數據
的,變數i的值從0到10,依次賦值給二進制文件w.
⑷ matlab 如何直接讀寫二進制文件直接寫入二進制字元串到文件中
你到底是要保存字元串還是二進制?還是二進制流,比如一長串形如的信息?
如果是後者,你可以將其按位8位斷開,轉化成char,注意位數補齊即可保證讀出和寫入一致
1)寫二進制文件
fwrite函數按照指定的數據精度將矩陣中的元素寫入到文件中。其調用格式為:
COUNT=fwrite(fid,A,precision)
說明:其中COUNT返回所寫的數據元素個數(可預設),fid為文件句柄,A用來存放寫入文件的數據,precision代表數據精度,常用的數據精度有:char、uchar、int、long、float、double等。預設數據精度為uchar,即無符號字元格式。
例6.8 將一個二進制矩陣存入磁碟文件中。
>> a=[1 2 3 4 5 6 7 8 9];
>> fid="fopen"('d:\test.bin','wb') %以二進制數據寫入方式打開文件
fid =
3 %其值大於0,表示打開成功
>> fwrite(fid,a,'double')
ans =
9 %表示寫入了9個數據
>> fclose(fid)
ans =
0 %表示關閉成功
2)讀二進制文件
fread函數可以讀取二進制文件的數據,並將數據存入矩陣。其調用格式為:
[A,COUNT]=fread(fid,size,precision)
說明:其中A是用於存放讀取數據的矩陣、COUNT是返回所讀取的數據元素個數、fid為文件句柄、size為可選項,若不選用則讀取整個文件內容;若選用則它的值可以是下列值:N(讀取N個元素到一個列向量)、inf(讀取整個文件)、[M,N](讀數據到M×N的矩陣中,數據按列存放)。precision用於控制所寫數據的精度,其形式與fwrite函數相同
⑸ c#二進制文件的寫入和讀取
c#二進制文件的寫入和讀取,參考代碼如下:
usingSystem;
usingSystem.IO;
publicclassFileApp
{
publicstaticvoidMain()
{
//在當前目錄創建一個文件myfile.txt,對該文件具有讀寫許可權
FileStreamfsMyfile=newFileStream("myfile.txt",FileMode.Create,FileAccess.ReadWrite);
//創建一個數據流寫入器,和打開的文件關聯
StreamWriterswMyfile=newStreamWriter(fsMyfile);
//以文本方式寫一個文件
swMyfile.WriteLine("Hello,World");
swMyfile.WriteLine("abcdefghijklmnopqrstuvwxyz");
swMyfile.WriteLine("ABCDEFGHIJKLMNOPQRSTUVWXYZ");
swMyfile.WriteLine("0123456789");
//沖刷數據(把數據真正寫到文件中去)
//注釋該句試試看,程序將報錯
swMyfile.Flush();
//以文本方式讀文件
//創建一個數據流讀入器,和打開的文件關聯
StreamReadersrMyfile=newStreamReader(fsMyfile);
//把文件指針重新定位到文件的開始
srMyfile.BaseStream.Seek(0,SeekOrigin.Begin);
//列印提示信息
Console.WriteLine("****************以文本方式讀文件*********************");
//列印文件文本內容
strings1;
while((s1=srMyfile.ReadLine())!=null)
{
Console.WriteLine(s1);
}
Console.WriteLine();
//以文本方式讀文件結束
//以二進制方式讀文件
//創建一個二進制數據流讀入器,和打開的文件關聯
BinaryReaderbrMyfile=newBinaryReader(fsMyfile);
//把文件指針重新定位到文件的開始
brMyfile.BaseStream.Seek(0,SeekOrigin.Begin);
//列印提示信息
Console.WriteLine("****************以二進制方式讀文件*********************");
//列印文件文本內容
Byteb1;
while(brMyfile.PeekChar()>-1)
{
b1=brMyfile.ReadByte();
//13為" ",表示回車;10為" ",表示換行
if(b1!=13&&b1!=10)
{
Console.Write("{0}",b1.ToString());
Console.Write(".");
}
else
{
Console.WriteLine();
}
}
Console.WriteLine(" ");
//以二進制方式讀文件結束
//關閉以上new的各個對象
brMyfile.Close();
srMyfile.Close();
fsMyfile.Close();
//讀取文件屬性
//列印提示信息
Console.WriteLine("****************讀取文件屬性*********************");
FileInfofiMyfile=newFileInfo("myfile.txt");
Console.WriteLine("文件名:{0}",fiMyfile.Name);
Console.WriteLine("文件名(含路徑):{0}",fiMyfile.FullName);
Console.WriteLine("文件大小(bytes):{0}",fiMyfile.Length);
Console.WriteLine("文件創建時間:{0}",fiMyfile.CreationTime);
}
}
⑹ C 語言向文件寫入二進制信息
不清楚你是用什麼工具打開文件查看的,如果是記事本的話,是按照ASCII方式顯示的,所以你看到的內容是Administrator 123456 0,你可以使用UltraEdit工具打開UserInfo.bin,有 十六進制 和 文本方式 兩種方式可以查看文件內容。
⑺ 第十二章:文件輸入/輸出-5用fwrite()寫二進制數據
在本文章中,您將學習如何使用C fwrite函數來創建一個隨機訪問文件。
fwrite()函數在stdio.h庫中定義。函數的作用是:將數據寫入二進制文件。
下面是fwrite()函數的語法:
函數的作用是:將內存中的數據塊寫入文件。它有以下參數:
下面的示例使用fwrite()函數將從0到9的數字寫入文件:
它是如何執行的。
首先,使用fopen()函數打開文件numbers.dat。fopen()使用wb模式將二進制數據寫入文件。如果文件不存在,它將創建一個新文件。但是,如果文件已經存在,它將覆蓋文件的內容。
其次,從0迭代到9,並使用fwrite()函數將每個數字寫入文件:
下面的語句將一個整數寫入文件:
第三,使用fclose()函數關閉文件:
假設您需要將庫存數據寫入文件。庫存包括一份記錄清單,其中每條記錄包含以下信息:
第二,定義一個函數,允許用戶輸入多個產品:
input()函數的定義如下:
第三,定義一個函數,將記錄保存到filename指定的文件中:
save()函數的定義如下:
save()函數做三件事:打開文件,將產品列表中的每個結構體寫到文件中,並關閉它。
最後,定義一個函數來顯示輸入的清單:
display()函數的邏輯如下:
放在一起:
請注意,SIZE常量定義了用戶每次輸入的產品數量。
⑻ 怎麼把二進制數據寫到文件里
for 循環是用來向 用FileStream類新建的二進制文件w寫入二進制數據的,變數i的值從0到10,依次賦值給二進制文件w.
⑼ 如何寫入二進制文件
#include 寫二進制文件 寫二進制文件應該使用ofstream類,文件的打開模式一定要是 binary,如內果傳入的不是 binary, 文件將以容ASCII方式打開。 下面是示例代碼,用於寫入文件。 std::ofstream fout("a.dat", std::ios::binary); int nNum = 20; st