我有一个csv
文件,该文件通过java
程序自动填充。当我在Notepad++
中打开文本时,我有一行有以下文字:
-LRB- from the PMI Practice Standard for Work Breakdown Structures , Oct 2000 -RRB- '',"no","f1_FRAG:1.0","f2_specialChar:1.0","f3:15.0","f4:7.0","f5:0.0","f6:2.0","f7:0.0","f8:3.7612001156935624","f9:7.0","f10:1.0","f11:1.0","f12:0.0","f13:0.0","f14:0.0,"f15_ROOT:1.0","f16_specialChar:1.0","f17_NOTHING:1.0","f18_IN:1.0""
但是当我在excel表中打开它时,有两个问题:
1)当我点击单元格时,我看到#Name
错误,并且页面上的任何点击都会导致错误。我甚至无法正常关闭excel窗口。当我点击单元格时,我有时会看到类似=A228
或=B223
的内容。它听起来像是一个公式,但实际上并非如此。
2)该行未完全显示。当我使用office excel
打开文件时,我看不到这个部分:
",f15_ROOT:1.0","f16_specialChar:1.0","f17_NOTHING:1.0","f18_IN:1.0"".
感谢任何帮助。
答案 0 :(得分:2)
由于行以 -
(减号)开头,因此Excel需要一个公式。
手动,你可以:
'
(撇号)(告诉Excel该单元格包含文本),或Format Cells
→Number
标签→Text
理想情况下,为防止将来出现此问题,应更改生成.CSV
文件的Java程序,以使用 "
双引号括起文本字段。< / p>
奇怪的是,这是你的例子中唯一一个用双引号括起来的不是的字段。
"-LRB- from the PMI Practice Standard for Work Breakdown Structures , Oct 2000 -RRB- ''","no","f1_FRAG:1.0","f2_specialChar:1.0","f3:15.0","f4:7.0","f5:0.0","f6:2.0","f7:0.0","f8:3.7612001156935624","f9:7.0","f10:1.0","f11:1.0","f12:0.0","f13:0.0","f14:0.0,"f15_ROOT:1.0","f16_specialChar:1.0","f17_NOTHING:1.0","f18_IN:1.0""
在最小值处,双引号应该在以符号开头或包含逗号的任何字段周围使用(如上所述)。
1997,Ford,E350,"Super, luxurious truck"
大多数打开CSV的应用都会识别并删除双引号。
可以引用任何字段(即包含在双引号字符中)。必须引用某些字段,如下所示 规则。
"1997","Ford","E350"
必须引用包含逗号或双引号字符的字段。
1997,Ford,E350,"Super, luxurious truck"
每个嵌入的双引号字符必须用一对双引号字符表示。
1997,Ford,E350,"Super, ""luxurious"" truck"
令人惊讶的是,我找不到微软的任何参考文档,提到用撇号开始文本单元格。 (我想这是一个秘密,所以如果有人问,你没有听到我的消息。): - )
你特意得到#NAME错误的原因是因为Excel表示你正在尝试输入一个公式(因为减号),但它没有识别名称的功能(&#34; LRB&#34;)