首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >计算机基础题

计算机基础题
EN

Stack Overflow用户
提问于 2010-11-19 15:28:30
回答 3查看 158关注 0票数 0

大家好,谁能告诉我这个问题的答案?我创建了一个简单的txt文件。它只包含两个单词,单词是hello单词,根据我的研究,计算机使用ascii码将文本存储在磁盘或内存中,.In ascii码每个字母或符号由一个字节表示,或者简单地说,一个字节用于存储一个符号。现在的问题是,当我看到文件的大小是11字节时,我知道9字节代表单词,1字节代表空间,那么为什么它显示11字节大小,.i尝试了不同的方法,比如更改文件的名称,尽可能用最短的名称或最长的名称保存它,但它没有改变总存储空间,所以有人能解释为什么会发生这种情况吗?我在window或Linux(Ubuntu.centos)系统上尝试了这个东西,结果是一样的。

EN

回答 3

Stack Overflow用户

发布于 2010-11-19 15:36:02

代码语言:javascript
运行
复制
pax> echo hello word >outfile.txt

pax> ls -al outfile.txt 
-rw-r--r-- 1 pax   pax   11 2010-11-19 15:34 outfile.txt

pax> od -xcb outfile.txt 
0000000    6568    6c6c    206f    6f77    6472    000a
          h   e   l   l   o       w   o   r   d  \n
        150 145 154 154 157 040 167 157 162 144 012

pax> hd outfile.txt 
00000000  68 65 6c 6c 6f 20 77 6f  72 64 0a                 |hello word.|
0000000b

如上所述,您将存储"hello word"和换行符。总共有11个字符。如果您不需要换行符,可以使用类似于echo-n选项(它不添加换行符):

代码语言:javascript
运行
复制
pax> echo -n hello word >outfile.txt

pax> ls -al outfile.txt 
-rw-r--r-- 1 pax   pax   10 2010-11-19 15:36 outfile.txt

pax> od -xcb outfile.txt 
0000000    6568    6c6c    206f    6f77    6472
          h   e   l   l   o       w   o   r   d
        150 145 154 154 157 040 167 157 162 144

pax> hd outfile.txt 
00000000  68 65 6c 6c 6f 20 77 6f  72 64                    |hello word|
0000000a
票数 3
EN

Stack Overflow用户

发布于 2010-11-19 15:33:34

如果您想查看文件的内容,可以在linux "od“下使用"od”命令对其执行八进制转储。很可能你看到的是一个CR (回车)和一个LN (换行符)。文件的名称与他的大小无关。

路易斯

票数 2
EN

Stack Overflow用户

发布于 2010-11-19 15:36:51

您是否在文本文件(\n)中添加了新行?这个字符看不到并不意味着它不在那里。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4222963

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档