Как экспортировать отчет Crystal Report в текстовый файл Unicode?

StackOverflow https://stackoverflow.com/questions/250784

Вопрос

Я пытаюсь экспортировать отчет Crystal Report в текстовый файл, сохраняя все найденные в нем символы Юникода. По умолчанию Crystal Reports экспортируется в текстовый файл ANSI.

Вот очень упрощенная версия того, что я делаю:

Dim objCRReport As CRAXDRT.Report
[...]
objCRReport.ExportOptions.FormatType = 8 'crEFTText
objCRReport.ExportOptions.DestinationType = 1 'crEDTDiskFile
objCRReport.ExportOptions.DiskFileName = "C:\reportInTextFormat.txt"
objCRReport.Export blnPromptUser 

Поскольку он создает файл в формате ANSI, я теряю все специальные символы, найденные в отчете. Все эти символы хороши при непосредственном просмотре отчета Crystal.

Обратите внимание, что я ссылаюсь на " библиотеку времени выполнения ActiveX Designer Crystal Reports 9 " в частности.

Это было полезно?

Решение

Я хочу отметить, что я пытался предварительно создать файл Unicode с тем же именем before для экспорта, надеясь, что код Crystal заметит этот файл и добавит его, а не создание файла ANSI, но, к сожалению, это не так.

Тогда я подумал, что смогу обойти эту проблему (стиль ниндзя), просто экспортировав в файл RTF (который сохраняет символы), а затем прочитав содержимое этого RTF (за исключением форматирования). Затем я сам создал бы текстовый файл Unicode, записав в него содержимое RTF. К сожалению, чтобы добиться этого, мне пришлось изучить использование RichTextBox, но столкнулся с множеством проблем с этим. Я думаю, что у меня будет больше успеха в VB.Net, но, к сожалению, я застрял с VB6 для этой задачи.

Попробовав эти подходы, я обнаружил статью , которая выглядит предположить, что Crystal Reports 9 поддерживает экспорт в текстовый файл Unicode, но я еще не видел, как это работает. В нем упоминается, что механизм печати поддерживает его, поэтому я собираюсь посмотреть глубже, чтобы выяснить, могу ли я его вызвать, если сам .export не делает этого сам (в чем я сомневаюсь).

Оказывается, Кристалл в значительной степени зависит от драйвера принтера для поддержки Unicode , поэтому я решил разобраться в этом. Оказалось, что драйвер принтера имел для поддержки Unicode, и это было в моей тестовой среде. Хотя это было интересно узнать, это не решило мою проблему - у меня уже был совместимый драйвер принтера.

Итак, наконец: после нескольких дней попыток найти решение этой проблемы мой начальник решил, что пришло время сократить наши потери, и вместо этого мы планировали изменить дизайн этой функции без привлечения Crystal Report to Text. экспорт. Однако я по-прежнему очень заинтересован в том, как экспортировать в текстовый файл Unicode с помощью Crystal - поэтому, пожалуйста, ответьте, если знаете, как.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top