0

Crystal Report をテキスト ファイルにエクスポートしようとしていますが、その中にある Unicode 文字は保持されます。デフォルトでは、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 Report を直接表示する場合はすべて問題ありません。

特に「Crystal Reports 9 ActiveX Designer Runtime Library」を参照していることに注意してください。

4

1 に答える 1

1

エクスポートの前に同じ名前の Unicode ファイルを事前に作成しようとしたことを指摘したいと思います。Crystal コードがファイルを認識し、ANSI ファイルを作成するのではなく追加することを期待していますが、残念ながらこれはそうではありませんケース。

次に、RTF ファイル (文字を保持する) にエクスポートし、この RTF の内容を (フォーマットを除いて) 読み取るだけで、この問題 (忍者スタイル) を回避できると考えました。次に、自分で Unicode テキスト ファイルを作成し、RTF コンテンツを書き込みます。残念ながら、これを実現するには、RichTextBox の使用を検討する必要がありましたが、これには多くの問題がありました。私は VB.Net でもっと成功すると思いますが、残念ながら、このタスクには VB6 を使用しています。

これらのアプローチを試した後、Crystal Reports 9が Unicode テキスト ファイルへのエクスポートをサポートしていると思われる記事を見つけましたが、まだ動作していません。印刷エンジンがそれをサポートしていると述べているので、.export自体がそうしていない場合に備えて、それを呼び出すことができるかどうかを詳しく調べます(私は疑います)。

Crystalは Unicode をサポートするためにプリンタ ドライバに大きく依存していることが判明したため、それを調べることにしました。プリンター ドライバーUnicode をサポートする必要があり、これ私のテスト環境の場合でした。これは興味深い発見でしたが、私の問題は解決しませんでした。互換性のあるプリンター ドライバーが既にありました。

最終的に、これに対する解決策を見つけようと数日間試みた後、上司は損失を削減する時が来たと判断し、代わりに、Crystal Report to Text エクスポートを使用せずに、機能の再設計を計画しました. ただし、Crystal を使用して Unicode テキスト ファイルにエクスポートする方法に非常に興味があります。方法を知っている場合は回答してください。

于 2008-10-30T16:39:07.077 に答える