В Java мы используем следующий пакет для программного создания документов Excel:
org.apache.poi.hssf
Если вы попытаетесь задать имя листа (НЕ файл, а внутренний лист Excel), вы получите сообщение об ошибке, если:
- Имя содержит более 31 символа
- Имя содержит любой из следующих символов: / \ *? []
Однако после создания документа с именем листа:
Ошибка не выводится, и все выглядит нормально в Java. Когда вы открываете файл Excel в Office 2003, он выдаст сообщение об ошибке, в котором говорится, что имя листа недопустимо и что оно переименовано в что-то общее, например «Лист 1».
Я не знаю много о ранее заявленном пакете, который мы используем, но похоже, что он неправильно фильтрует недопустимые имена листов Excel. Любая идея о том, как я могу отфильтровать все известные недопустимые символы? Я не решаюсь просто отфильтровывать все несловарные символы.