吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 975|回复: 11
收起左侧

[已解决] 如何用C语言向文件写入如下数据

[复制链接]
jtwc 发表于 2021-10-30 14:39
本帖最后由 jtwc 于 2021-10-30 14:41 编辑

各位老师,如何用C语言向“1.blk”文件写入如下数据。最终显示如图:谢谢了
2.png

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| jtwc 发表于 2021-10-30 14:53

本帖最后由 jtwc 于 2021-10-28 13:48 编辑


把源1.blk文件内容读取写入a.txt代码
int main()
        {
                FILE *file = fopen("./1.blk", "r");
                if (file == NULL)
                {
                        printf("open error!\n");
                        return 0;
                }
                FILE *fp = fopen("./a.txt", "w");
                char c;
                while ((c = fgetc(file)) != EOF)
                {
                        fputc(c, fp);
                }
                fclose(file);
                fclose(fp);
                system("pause");
                return 0;
        }
3.png
苏紫方璇 发表于 2021-10-30 15:24
这样?
[C] 纯文本查看 复制代码
#include <stdio.h>
int main(void)
{
	unsigned char buf[] = "\xA5\x00Q\xFFSZ301091\x00\x00\x00";
	FILE *file = fopen("./1.blk", "w");
	if (file!=NULL)
	{
		fwrite(buf, sizeof(buf), 1, file);
	}
	fclose(file);
	return 0;
}

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
jtwc + 1 + 1 谢谢@Thanks!

查看全部评分

 楼主| jtwc 发表于 2021-10-30 15:33
苏紫方璇 发表于 2021-10-30 15:24
这样?
[mw_shl_code=c,true]#include
int main(void)

谢谢老师,非常完美,以搞定,再次感谢了
 楼主| jtwc 发表于 2021-10-30 19:19
苏紫方璇 发表于 2021-10-30 15:24
这样?
[mw_shl_code=c,true]#include
int main(void)

老师,这个写入后如何正确的读取出来呢?谢谢了

点评

用fread  详情 回复 发表于 2021-10-30 19:31
苏紫方璇 发表于 2021-10-30 19:31
jtwc 发表于 2021-10-30 19:19
老师,这个写入后如何正确的读取出来呢?谢谢了

用fread
 楼主| jtwc 发表于 2021-10-30 19:47

老师,我写的咋读出不正确呢?麻烦老师帮我看看,谢谢了
#include <stdio.h>
int main(void)
{
        unsigned char buf[] = "\xA5\x00Q\xFFSZ301091\x00\x00\x00";
        FILE *file = fopen("D:\\dzh332\\USERDATA\\block\\1.blk", "w");
        if (file != NULL)
        {
                fwrite(buf, sizeof(buf), 1, file);
        }
        fclose(file);

        FILE* file = fopen("D:\\dzh332\\USERDATA\\block\\1.blk", "rt");
        if (file == NULL)
        {
                printf("File open failed!\n");
                return -2;
        }

        char a[100];

        fread(&a, sizeof(a), 1, file);
        printf("%d\n", a);

        fclose(file);

                system("pause");
                return 0;
        }

点评

char a[16]; fread(a, sizeof(a), 1, file);  详情 回复 发表于 2021-10-30 20:25
苏紫方璇 发表于 2021-10-30 20:25
jtwc 发表于 2021-10-30 19:47
老师,我写的咋读出不正确呢?麻烦老师帮我看看,谢谢了
#include
int main(void)

char a[16];
fread(a, sizeof(a), 1, file);
 楼主| jtwc 发表于 2021-10-30 20:48
苏紫方璇 发表于 2021-10-30 20:25
char a[16];
fread(a, sizeof(a), 1, file);

老师,读出来还是不正确呢?
 楼主| jtwc 发表于 2021-10-30 21:01
苏紫方璇 发表于 2021-10-30 20:25
char a[16];
fread(a, sizeof(a), 1, file);

老师,出来还是不正确
1.png

点评

%d输出是数字,字符串用%s,另外这段有不可见字符和字符串截止符,你用printf输出不了  详情 回复 发表于 2021-10-30 22:18
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 22:29

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表