+ -
当前位置:首页 → 问答吧 → 写入文件字节大小的问题

写入文件字节大小的问题

时间:2011-12-12

来源:互联网

上代码先:
复制内容到剪贴板
代码:
#include "stdafx.h"
#include <iostream>
#include <fstream>
#include <bitset>
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
        bitset<8> bitsec;
        //bitsec.flip();
        /*int a[8];
        for (int index = 0; index !=8 ;index++)
        {
                a[index] = bitsec[index];
        }
        */
        //cout << a << sizeof(a) << endl;
        //cout << sizeof(bitsec);
        fstream fs("D:\\a.txt", ios_base::in|ios_base::out|ios_base::binary);
        if (fs)
        {
                fs <<bitsec;
               
        }
       
按照我的理解这时写入文件的应该是1B,但是实际的文件大小却不是这样,请问这是为什么(我是以二进制写入的)!

作者: isyf   发布时间: 2011-12-12

复制内容到剪贴板
代码:
#include <iostream>
#include <fstream>
#include <bitset>
using namespace std;
int main(int argc, char* argv[])
{
        bitset<8> bitsec;
                for(int i=0;i<8;i++)
                        bitsec.set(i);
        //bitsec.flip();
        /*int a[8];
        for (int index = 0; index !=8 ;index++)
        {
                a[index] = bitsec[index];
        }
        */
        //cout << a << sizeof(a) << endl;
        //cout << sizeof(bitsec);
        ofstream fs("D:\\a.txt", ios_base::in|ios_base::out|ios_base::binary);
        if (fs)
        {
                fs <<bitsec;
               
        }
                return 0;
}
a.txt文件内容11111111. u$ i0 S4 Q: ^6 D5 x) G$ {6 {$ s
大小1B;1 g1 f+ r* j1 j8 Y3 e! V/ g

作者: 月夜幻影   发布时间: 2011-12-12

这个好像不能以文件显示为准  Q) r+ l/ a4 b
你可以试一下! L! X: T) d) ^; I
输入1个1个和输入十几个1的效果一样;都是1kb

作者: 月夜幻影   发布时间: 2011-12-12

那用数组行么?定义一个int a[8]的数组,写入的时候用二进制写入,可以得到相同的效果么(大小1B)

作者: isyf   发布时间: 2011-12-12

好强 嘎嘎

作者: zongyang_2011   发布时间: 2011-12-12

热门下载

更多