2012-03-26 20 views
1

このアプリケーションでは、TinyMCEによって制御されるテキストフィールドがあります。バイナリジャンクを含む入力文字列をクリーニングしてASCII印刷可能文字列を生成する

ORA-01461:LONG列にのみ挿入用のLONG値をバインドすることができ

テキストフィールドにWordから顧客ペーストテキストは、Oracleは私達が私達のデータベースにこのテキストを格納しようとしているときbalks場合

メモ帳などでテキストを消去しても問題は発生しないため、SQLで使用される値の間の区切り文字としてOracleが使用するバイナリ迷惑メールを含む入力文字列に問題があると考えられます文字列を挿入します。

古代TinyMCEをアップグレードすると問題が解決する可能性がありますが、下位層に渡すときにテキストが本当にきれいであることを確認したい場合もあります。だから私は、私は、テキストが真のASCIIで、そうでない場合、入力中の行をループでASCIIとして渡していないと、次の操作を行いクリーンなすべてのものを確実かもしれないと考えた:

line.replaceAll("[^\\p{ASCII}]", "") 

をこれは実行可能なソリューションです。 、そうでない場合、落とし穴は何ですか?

+0

あなたはreplaceAllプロセスで情報を失ったため、同じコントロールでこのデータを後で編集することはできません。 – TheBlastOne

+0

わかりません。コントロールによって、ティンシムスウィジェットを意味しますか?私はちょうど下層を打つとき、データがきれいであることを確認したいです。通常、テキストはフィールドに入力され、ユーザーは保存を押し、テキストは下位レイヤに渡されます。 さらに詳しい情報データがきれいであることを確認したい。 TinyMCEスクリプトを使用すると、すべての信頼がクライアントに委ねられます。クライアントのコントロール外のレベルで整合性を確保したい。 – oligofren

+0

私は参照してください。はい、私はウィジェットを参照しています。つまり、データを保存する前にクリーンアップしておけば、ウィジェットがデータを正しく表示するのに必要な方法でデータを表示できるように、取得後にそのデータを「汚れ」なくす必要があります。 – TheBlastOne

答えて

0

私はhereのようにペーストの内容をクリーニングするのはどうですか? これにより、ジャンクも削除される可能性があります。

+0

TinyMCE(新しいバージョンまたはスクリプトで)でデータを消去することができますが、クライアントの制御外のレベルで整合性を確保したいと考えています。 – oligofren

関連する問題