将包含二进制数据的C数组写入文件
C是一种我不懂的语言:)我的问题对你们大多数人来说可能很傻。 这个数组包含文件(style.css),只列出了它的一部分,问题是如何将它写入文件?使用linux-slackware将包含二进制数据的C数组写入文件,c,arrays,file,binary,C,Arrays,File,Binary,C是一种我不懂的语言:)我的问题对你们大多数人来说可能很傻。 这个数组包含文件(style.css),只列出了它的一部分,问题是如何将它写入文件?使用linux-slackware static const char data_style_css[] = { 0x20, 0x31, 0x30, 0x30, 0x25, 0x29, 0x3B, 0x62, 0x6F, 0x72, 0x64, 0x65, 0x72, 0x3A, 0x73, 0x6F, 0x6C, 0x69, 0x64, 0x20,
static const char data_style_css[] = {
0x20, 0x31, 0x30, 0x30, 0x25, 0x29, 0x3B, 0x62, 0x6F, 0x72, 0x64, 0x65, 0x72, 0x3A, 0x73,
0x6F, 0x6C, 0x69, 0x64, 0x20, 0x31, 0x70, 0x78, 0x20, 0x23, 0x32, 0x34, 0x37, 0x42, 0x45,
0x36, 0x3B, 0x63, 0x6F, 0x6C, 0x6F, 0x72, 0x3A, 0x23, 0x46, 0x46, 0x46, 0x3B, 0x66, 0x6F,
0x6E, 0x74, 0x2D, 0x73, 0x69, 0x7A, 0x65, 0x3A, 0x31, 0x33, 0x70, 0x78, 0x3B, 0x68, 0x65,
0x69, 0x67, 0x68, 0x74, 0x3A, 0x33, 0x30, 0x70, 0x78, 0x3B, 0x6C, 0x69, 0x6E, 0x65, 0x2D,
0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x3A, 0x33, 0x30, 0x70, 0x78, 0x3B, 0x74, 0x65, 0x78,
0x74, 0x2D, 0x61, 0x6C, 0x69, 0x67, 0x6E, 0x3A, 0x63, 0x65, 0x6E, 0x74, 0x65, 0x72, 0x3B,
0x77, 0x69, 0x64, 0x74, 0x68, 0x3A, 0x30, 0x7D, 0 };
提前感谢您的数组表示一个标准的以null结尾的字符串。您可以使用标准C I/O库将其写入文件 下面是一个简单的例子:
FILE* f = fopen("output_file", "w");
if (f == NULL) {
perror("fopen");
}
else {
fprintf(f, "%s", data_style_css);
fclose(f);
}
此链接将为您提供有关这些功能(以及更多)的详细信息:
通过以上优化,我在Mystyle.css上获得了以下输出(清晰易读):
(100%),
边框:实心1px#247BE6
颜色:#FFF
字体大小:13px
高度:30px
线高:30px
文本对齐:居中
宽度:0
}我尝试了一些C语言的答案,但没有成功,所以建议读一些C语言的书是正确的。我能用我理解的程序语言做我想做的事情-LUA以下是脚本:
all=""
for i, v in ipairs(data_fail_html) do all=all..string.char(v) end
print (all)
假设“data\u fail\u html”是包含二进制数据的数组
从linux dropbear shell:
lua script.lua >> data_fail.html
感谢大家抽出时间读一些关于C的书,特别是关于输入和输出的一章怎么样?
fprintf(fp,“%s”,data\u style\u css)代码>非常感谢您的快速回答,我放弃了C语言,设法用我理解的语言来完成它-LUA将在网站允许我回答我自己的问题时尽快发布脚本。输出文件实际上没有CR&LF字符。这对浏览器来说不是问题。不客气…:)而且不要放弃,顺便问一下,你是如何将.css文件放入数组的。?????
all=""
for i, v in ipairs(data_fail_html) do all=all..string.char(v) end
print (all)
lua script.lua >> data_fail.html