- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
当我以“wb”模式将“asklfj123”写入文件时,然后在vim中打开它,为什么我仍然可以看到asklfj?但我在vim 中看不到123。我的意思是,当我以“wb”模式编写它时,程序不会将其转换为ASCII代码,但编辑器会以ASCII代码打开它,那么它在文本编辑器中应该是垃圾值,不是吗?那为什么我还能看到它们?
最佳答案
二进制模式意味着“不翻译任何内容”。
在“文本”模式(即“非二进制模式”)下,在某些系统上,例如换行符的表示在操作系统的文件表示和标准 '\n'
之间是不同的C 用于换行符表示。
在某些系统中还有特殊字符来表示文件结束。在文本模式下,这些字符分别被翻译并理解为换行符和文件结尾。
现在,以“二进制”模式编写文本就可以正常工作,而且我怀疑您的问题是其他问题 - 没有代码,就不可能回答什么问题。提到 vim
也让我认为你正在使用 Linux 或其他一些基于 Unix 的系统,其中换行符确实与 '\n'
相同,所以没有翻译是在这些系统中完成的。
编辑:
鉴于代码,这是典型的“未定义行为”,因为:
char test[30] = "adadsf123";
...
fwrite(test, sizeof(double), 6, fp);
fwrite
的参数是要写入的数据、每个成员的大小和项目数,最后是要写入的文件对象。
在本例中,给出一个 30 字节的字符串作为输入,然后使用 sizeof(double) 作为每个项目的大小,以及 6 个项目。由于 sizeof(double)
大于 30,因此会输出一些随机垃圾。随机垃圾是什么,取决于 test
变量之后内存中存储的内容。在发布的代码中,这似乎是 fp
变量。很难确切地说 fp
的值是多少。但是fwrite
正在按照它的指示执行操作,将二进制数据写入二进制文件。 ASCII 字符,在“二进制”中仍然会显示相同,'A' 的二进制代码是 01000001,并且会出现,如果解释为 ASCII 显示为 'A' - 并且 VIM 和 putc 会出现将其解释为 ASCII。
关于c++ - 当我以 "wb"模式写入文件时,会发生什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18160671/
我是 VBA 新手,正在尝试自动更新工作簿。我有一个源工作簿 A 和一个目标工作簿 B。两者都有一个名为推出摘要的表。我希望用户更新 A 中的此工作表,然后单击更新按钮,该按钮应该运行我的宏。此宏应自
所以我试图从我过滤的一个 WB 中复制数据,并将其粘贴到前几行底部的另一个 WB 中。 我每周五运行此报告,并在过去 7 天内一次提取 1 天数据。源 WB 的名称会随着我拉取的每一天而改变,看起来像
我有一个包含多个工作簿的文件。我正在使用这个宏(如下)对此文件的每个工作簿进行一些更改。 Sub REPLACE1() Dim y As Integer Dim wB As Workbook Set
我有两张纸,我想比较出现在两张纸的第一列中的“代码”。 这是sheet1: Sheet1 这是 sheet2:sheet2 我想遍历 sheet1 上的每个代码并找到 sheet 2 上具有相同代码的
我正在使用 Django。我试图使用 Pythons 图像库将用户上传的图标压缩到较小的尺寸。 以下是我的代码: def resizeImage(icon,ext): path= os.pa
我正在查看一些套接字代码。它将“wb”声明为长度: ssize_t wb; wb = sendto(sock, buf, len, 0, (struct
我正在使用字节数组的“wb”模式工作 for i in range(len(mas)): message.write(mas[i]) 在我必须在新行上将数据写入文件之后,例如在 'w' 模式下
这个问题在这里已经有了答案: Python file open function modes (2 个回答) Difference between modes a, a+, w, w+, and r+
'第一次来这里,谢谢你的耐心! 我有一个包含多张工作表的工作簿,我需要: 1)选择工作表对(索引和索引+1) 2)将它们复制到新的工作簿中 3)用引用单元格中的任何标签重命名工作表(例如A1) 4)然
我有一个正在执行以下操作的代码: 提示选择外部工作簿 复制该 wb 中的所有数据 在主 wb 中准确粘贴 1:1 关闭并从 .xlsm 保存到 .xlsx 但名称为我的主 wb Sub CopyS
已关闭。此问题不符合Stack Overflow guidelines 。目前不接受答案。 有关您编写的代码问题的问题必须在问题本身中描述具体问题 - 并包含有效代码以重现该问题。请参阅SSCCE.o
文件的副本包含原始文件的所有内容以及类似“\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\”。此外,它只对 txt 文件给出错
在使用pickle保存数据的例子中,经常会遇到很多人使用'wb'的第二个参数,例如: pickle.dump(obj, open('save.p', 'wb'))。 'wb' 参数有什么作用? 最佳答
这是我工作的第一个大型 VBA 项目。我正在自动归档来自多个来源的多个报告。上周我完成了我需要使用的两个报告的实现工作,并且 wb.SaveAs 函数正在工作。现在我已经添加了第三个来源,wb.Sav
至少可以追溯到 Pentium 4 甚至更早版本,写组合缓冲区一直是 Intel CPU 的一个特性。基本思想是这些缓存线大小的缓冲区收集对同一缓存线的写入,以便它们可以作为一个单元进行处理。作为它们
这是我正在尝试做的一个片段: $file = fopen($path, "wb"); fwrite($file, $data); fclose($file); 足够简单。 但是当我打开创建的文件时,
我需要完成一项任务,涉及整理大量工作簿中的数据,我已将它们全部放在同一个文件夹中,并且都是 *xlsm 文件。我已经有一个宏来从每张工作表中获取数据并将其全部输入到主工作表中,就像我之前所做的那样。
代码如下: #include using namespace std; int main(){ FILE* to = NULL; to = fopen("cpp", "wb");
我正在尝试编写一个程序来下载所有 xkcd 漫画图像并将它们保存在一个目录中,所有图像名称为 title.png,title 是漫画的标题。这是它的代码: #Downloads all the xkc
我用 C 编写了一个小程序,用于在二进制文件中创建学生列表。我调用函数 fsearch()(如下)来搜索指定的学生并更改他的数据,但数据似乎没有被修改。 // the file is opened i
我是一名优秀的程序员,十分优秀!