問題タブ [ebcdic]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 文字配列からバイト配列、読み取り可能な文字列へ
WireShark から取得した char 配列があります。
この char 配列をバイト配列に変換する必要があります。
char 配列からバイト配列への変換が成功new String(bytes, "Cp1047")
すると、バイト配列を EDCDIC に変換する必要があるため、作業できるようになります。
java - Java: 文字列をパック 10 進数に変換する
ここに新しい!
状況: AS/400 サーバーと通信する必要があるプロジェクトに取り組んでいます。私の仕事は、基本的に AS/400 サーバーに送信される要求を処理することです。これを行うには、すべてのユーザー入力を EDCDIC バイトにする必要があります。
問題:このフォーラムに
ある以下のコードを使用して、パック 10 進数を文字列に変換できました。
ここでの問題は、AS/400 サーバーが理解できるように、これらの文字列値を EBCDIC バイトに再度変換する必要があることです。Silverlake のドキュメントで指定されている形式を使用して、リクエスト (raw バイト) を作成するようなことを計画しています。リクエストが作成されたら、(セッターとゲッターを使用して) リクエストを格納する POJO を使用して、そのリクエスト内の値を手動で変更する予定ですrequest.setField1("Stuff".getBytes(Charset.forName("Cp1047")))
。
ビット、バイト、ニブルの経験はあまりありません。誰かが私を助けてくれることを願っています。
私たちのコードには、5 バイトで構成されるパック 10 進数が見つかりました。= {00 00 00 00 0F} のようになります。上記のコードから取得した方法を使用してこれを変換すると、取得した値は 0 でした。次に、この 0 を元のバイト サイズ 5 の元の形式に変換したいと思います。
parsing - Cobolコピーブックを使用してEBCDICから半幅および全角文字を読み取る方法
Talendを使用して、EBCDICファイルのCOBOLコピーブック表現を使用してEBCDICファイルを変換しています。しかし、EBCDIC文字の半幅と全角の表現を見つけることができません
提案してください。
c# - VB.Net/C#-ASCIIからEBCDIC
ASCIIエンコードされたファイルをEBCDICエンコードされたファイルに変換するアプリケーションがあります。私の問題は、他の変換ツール(EBCDICからASCII)を使用しようとすると、問題が発生することです。
これは私が私のコードを入手した場所ですhttp://support.microsoft.com/kb/216399
CS?NTPRC?37-5月MTLAW 4RY?-これは次のような結果になるはずです。
CcCs @@ CnCtCp $$ CrCc @@ C?C?-CmCaCy CmCtClCaCw C?$$ CrCy @@CmCtClCaCw$$-私のファイルのこのコンテンツ。
c# - EBCDICからASCIIへの変換、数値の処理
ファイルをECDICからASCII形式に変換しようとしていますが、興味深い問題が発生しました。ファイルには、固定長のレコードが含まれ、一部のフィールドは符号付き2進整数(レコードレイアウトではB4と記述)、および長精度の数値(レコードレイアウトではL8と記述)です。文字データは問題なく変換できましたが、どうすれば変換できるのかわかりません。元のシステム( IBM 5110 )のリファレンス・マニュアルから、フィールドを以下に説明します。
Bは、BASIC内部データ形式に変換される固定小数点符号付き2進整数形式の数値データ項目の長さ(2、4、または8バイト)を示します。レコードI/Oファイル入力の場合、レコードの次の2、4、または8バイトには、システムによって内部データ形式に変換され、READFILEまたはREREADで指定された変数に割り当てられる符号付きバイナリ値が含まれます。 FORMステートメントを使用したFILEステートメント。
と
Lは、数値の長精度(8文字)を示します。入力の場合、このエントリは、レコード内の8桁の長精度値が、READFILEまたはREREADFILEステートメントで指定された対応する数値変数に変換されずに割り当てられることを示します。
編集:これが私が変換に使用しているコードです
ruby - iconv の代わりに String#encode を使用した Ruby EBCDIC 変換
私はそれをうまくやっていた:
Ruby 1.9以降、次の警告が表示されます。
しかし、Encoding クラスで EBCDIC または cp37、cp500、cp875... の参照が見つかりません。
どこかから輸入すればいいの?自分で追加できますか?
database - db2: メインフレームから Linux に ebcdic データをロードして、ebcdic のままにする
メインフレーム DB2 からのテーブル (つまり、EBCDIC にエンコードされたデータを含む) を Linux DB2 にロードし、Linux で EBCDIC のままにしておく必要があります。
Linux の CREATE DATABASE で TERRITORY および CODEPAGE パラメータを試してみましたが、正しい値に到達できませんでした。
誰かがそれを行う方法を教えてもらえますか? 前もって感謝します
よろしく
ディディエ
php - PHP / SQL - EBCDIC を ASCII に変換する
iSeries ミッドレンジに対して SQL ステートメントを実行する PHP サーバー コードがあります。
これは、SQL クエリの簡略化されたバージョンです。
クエリは正常に実行されます。問題は、「SomeText」「Title」などの静的フィールド/値を使用し、結果が PHP で返される場合、目的の形式ではないことです。
システムに接続して結果を取得するには
PHPバージョン5.2.17を使用しています
iSeries は V7R1M0 です
PHP または SQL クエリ自体でサーバー側を変換するソリューションは素晴らしいでしょう。
ありがとう!
編集
ドルの提案により、ユーザー プロファイルの CCSID を 65535 から 37 に変更しました。
ここで、少し近づいた (以下) に戻ります...
これはおそらく、ユーザーを変更しただけなのでしょうか? システム、ジョブ、またはテーブルも変更する必要がありますか?
編集 2
ここにphpinfo出力があります
編集
解決
解決策は、CCSID 37 を使用するようにユーザー プロファイルを変更し、CCSID 37 を使用するようにサーバー ジョブを変更することでした。ジョブが再開されたときに元に戻らないように、手動で変更します。
java - UTF から EBCDIC への変換はロスレスですか?
MQ を介して外部と通信するプロセスがあります。外部システムはメインフレーム マッチング (IBM z/OS) で実行されますが、プロセスは CentOS Linux プラットフォームで実行されます。これまでのところ、問題はありませんでした。
最近、メッセージに印刷できない EBCDIC 文字が埋め込まれたメッセージを受け取るようになりました。これらの文字は、8 バイト長の圧縮 ID として使用されます。受信すると、UTF (CCSID 1208) でエンコードされたキューに到着します。
応答メッセージを識別するために、元の 8 バイトを戻す必要があります。応答を送信する前に ID を UTF から EBCDIC に戻すための解決策を Java で見つけようとしています。
AS400Text クラスを使用して変換を行い、JTOpen ライブラリをいじってみました。また、取引相手は ID のスナップショットをバイト単位で送信してきました。しかし、変換後のバイト数を比較すると、元のメッセージとは異なります。
誰もこの問題に遭遇したことがありますか? 間違ったコード ページを使用している可能性がありますか?
ご意見をお寄せいただきありがとうございます。
取引相手からのバイト数 (位置 [5,14]):
プログラム出力:
サンプルコードは次のとおりです。
groovy - EBCDIC コード ページが小文字の 'a' を変換しない
IBM コードページを使用して、文字列を ASCII から EBCDIC に変換しようとしています。印刷できない文字に変換される小文字の 'a' を除いて、変換は正しく行われます。
これは、Windows 7 で実行されている groovy スクリプトの一部で、問題を示しています。
EBCDIC に変換すると、最初の小文字の「a」を除いて、文字列内のすべての文字が有効になります。この問題に関する情報が見つかりません。同じ結果 (IBM01140、IBM1047 など) で多数の IBM コード ページを試しました。