为什么 word 文档的命名可以有空格

2016-12-13 09:15:04 +08:00
 Amy772147489

本人是编程初学者,了解基本的文件命名规范,有一条就是不能有空格嘛。但为什么 word 文档的文件命名可以有空格? word 文档的命名有空格不会造成像编程文件那样的不往后读了吗?

1886 次点击
所在节点    问与答
6 条回复
wwqgtxx
2016-12-13 09:24:34 +08:00
为什么有空格就不往后读了? windows 更多目录都是带空格的,也没看到出半毛钱的问题,除了一些蛋疼的工控软件以及部分从 linux 移植过来的程序
ragnaroks
2016-12-13 09:36:21 +08:00
假设你在 Windows 下,取到的目录一般是"C:\文件夹 1\folder2\Sky Dust\文件 的 名字.txt",所以不会有什么问题
crab
2016-12-13 10:03:32 +08:00
你说的空格应该是 NUL 吧?字符串遇到 00 截断。
SilentDepth
2016-12-13 10:04:58 +08:00
所以为什么要有引号啊
gamexg
2016-12-13 12:20:44 +08:00
"基本的文件命名规范"?
说的是基本的变量命名规范吧?部分编程语言文件名不允许空格,大部分原因是文件名和类、命名空间保持一致,类、命名空间不允许存在空格,所以文件也不能存在空格。但是一些没有关联的语言允许文件名出现空格。

然后类、命名空间不允许出现空格的原因是为了解析、书写方便,想象一个如果允许类型名称存在空格,那么怎么区分一个类名称是否结束?简单的解决办法就是前后加符号,例如 <class 1>,每次打类名称都需要加个<>,书写非常不方便,所以我知道的语言都不允许空格。

文件路径都是用 / 分割目录名称,所以理论上只要文件、文件夹名称里面不出现 / 就不会出现歧义,所以就允许空格存在。

另外 NULL (\0 ) 截断是 c 格式字符串才使用的字符串结束标记。 c 语言字符串本身不包含字符串长度信息,为了确定字符串结束位置,就在最后加一个 NULL(\0)来表示字符串结束。不过之后的语言大部分那都是字符串本身就带长度信息了,字符串内部存在 \0 也是允许的。
kingddc314
2016-12-13 12:50:34 +08:00
space(32)可不是\0 。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/327219

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX