当前位置: 首页 > 面试题库 >

Excel工作表名称的有效字符

葛阳
2023-03-14
问题内容

在Java中,我们使用以下程序包以编程方式创建excel文档:

org.apache.poi.hssf

如果尝试设置工作表的名称(不是文件,而是内部Excel工作表),则在以下情况下会出现错误:

  • 名称超过31个字符
  • 名称包含以下任何字符:/ \ *?[]

但是,在创建具有以下工作表名称的文档后:

@#$%&()+〜`“’:;,。|

没有错误输出,并且在Java中一切正常。当您在Office 2003中打开excel文件时,它会给您一个错误,指出工作表名称无效,并将其重命名为“
Sheet 1”之类的通用名称。

我对我们正在使用的先前介绍的软件包了解不多,但看起来好像没有正确过滤无效的Excel工作表名称。是否知道如何过滤掉所有已知的无效字符?我很想简单地过滤掉所有非单词字符。


问题答案:

我认为问题是冒号,而不是感叹号。

如果打开Excel并尝试手动编辑工作表名称,则不允许输入的唯一字符是[] * / \?:

如果在其中粘贴这些字符之一,则会出现以下错误:(Excel 2003)

重命名工作表或图表时,您输入了无效的名称。请尝试以下方法之一:

  • 确保您输入的名称不超过31个字符。
  • 确保名称不包含以下任何字符::\ /?* [ 要么 ]
  • 确保您没有将该名称留空。



 类似资料:
  • 本文向大家介绍excel-vba 检索活动工作簿中的所有工作表名称,包括了excel-vba 检索活动工作簿中的所有工作表名称的使用技巧和注意事项,需要的朋友参考一下 示例            

  • 下面的代码用于获取excel文件(.xlsx)的工作表名称 上面的代码存在的问题是,为一个9MB大小的文件创建需要占用大量内存(~700MB)&时间很长(5-6s)。即使将设置为也不会释放占用的内存(我知道可能被调用,也可能不被调用&JVM不会仅仅因为我将变量设置为null而释放内存) 我确实浏览了Workbook,XSSFWorkbook&根据我的理解,没有任何方法可以帮助我获得内存印记较低的工

  • 问题内容: 我有以下代码用于获取excel文件的工作表名称(.xlsx) 我上面的代码存在的问题是,为9MB大小的文件创建文件需要花费大量内存(〜700MB)和较长时间(5-6s)。即使将设置为,也不会释放占用的内存(我知道可能会叫,也可能不会叫&JVM不会因为我将变量设置为null而释放内存) 我确实浏览了Workbook,XSSFWorkbook的文档,据我了解,没有任何方法可以帮助我获得内存

  • 问题内容: ava类名称中哪些字符有效?还有哪些其他规则管理Java类名称(例如,Java类名称不能以数字开头)? 问题答案: 你几乎可以使用任何字符,包括大多数Unicode字符!确切的定义在Java语言规范的3.8:标识符一节中。 一个标识符是无限长序列的Java字母和爪哇位,其中第一个必须是一个爪哇字母。… 字母和数字可能来自整个Unicode字符集,…这允许程序员在使用其母语编写的程序中使

  • 问题内容: 我正在动态创建python类,我知道并非所有字符在此上下文中都是有效的。 我可以在类库中某处使用某种方法来清理随机文本字符串,以便将其用作类名吗?那个或者允许的字符列表将是一个很好的帮助。 关于与标识符名称冲突的补充: 就像在下面的答案中指出的@Ignacio一样,任何可以有效用作标识符的字符都是类名中的有效字符。您甚至可以毫无保留地将保留字用作类名。但是有一个陷阱。如果您确实使用保留