1: あゆりーな 06/03 16:55 はじめまして。 たまに拝見するのですが投稿するのは初めてです。 もしお分かりの方がいらしたら教えてください。 S3100のデータのDOS変換をすることになりました。 ところが、全角のところに半角のような文字が入っていることがあり、 これをDOSに変換すると「・」みたいになって変換されません。 どうも事情を確認すると「全角のところで「英数」のボタンを押すと入力することができる。 画面上は半角のようだが全角分の幅をとっていて、 印字すると半角文字に詰まって印字できる」ということです。 600で再現しようと思ったのですができませんでした。 3100だから?DAM端だからでしょうか? コードを調べたのですが、最初の1バイトが””67””か””68””のものが対象で、 ””67””関係は英数字関係なのでその次の1バイトをXタイプにしてNタイプに送れば うまく変換されそうですけれども大変そうです。 Mた、””68””関係はカタカナなのですが、これはどうやって対応表を作っていいかも 見当つきません。どんな文字体系なのでしょう。 どなたかよい解決法をご存知だったらいいのですが。 よろしくお願いいたします。 2:Re: BLUELION 06/04 04:01 > S3100のデータのDOS変換をすることになりました。 > ところが、全角のところに半角のような文字が入っていることがあり、 > これをDOSに変換すると「・」みたいになって変換されません。 > > どうも事情を確認すると「全角のところで「英数」のボタンを押すと入力することができる。 > 画面上は半角のようだが全角分の幅をとっていて、 > 印字すると半角文字に詰まって印字できる」ということです。 > 多分G1集合で定義されている外字文字ではないでしょうか? 通常600シリーズやS7200シリーズで動作する #NFCNVや#FTCNVでA-VX形式(JIPS-E)からDOSに変換する時は G1集合の外字は同じコードでDOSに変換されます どのツールやユーティリティーを使用されているのでしょうか? > 600で再現しようと思ったのですができませんでした。 > 3100だから?DAM端だからでしょうか? > > コードを調べたのですが、最初の1バイトが””67””か””68””のものが対象で、 > ””67””関係は英数字関係なのでその次の1バイトをXタイプにしてNタイプに送れば > うまく変換されそうですけれども大変そうです。 > Mた、””68””関係はカタカナなのですが、これはどうやって対応表を作っていいかも > 見当つきません。どんな文字体系なのでしょう。 > > どなたかよい解決法をご存知だったらいいのですが。 > よろしくお願いいたします。 > A−VXの文字コードは S100内部コードやJIPSコードやJISコードなど、いろいろなコードがありかなり大変です とくにS100内部コードなんて、私には理解できませんでした(笑) FDのデータならコンバートスターや52DISKなんとかというWindowsのソフトと変換するのが簡単ですが、G1の外字エリアはやはり細工をしないと変換できないと思いました G0の外字(通常のユーザー外字エリアの外字)などは対応する外字エリアにA−VXのSYS@GAIJやSYS@DG2などから変換すればあるていどwindowsでも同じように表示されるはずです 以上乱文ですみませんが、私の表現力および技術力ではこのくらいしか説明できません 4:Re: あゆりーな 06/05 18:41 回答ありがとうございました。 その後もう一度調べたのですが、 7200のDAM端から、日本語項目で「半角」を押して 数字やカタカナを入力してみたところ 同じ結果になったので、DAM端の機能のようです。 G1集合かどうなのかは、調べたのですがよく分かりませんでした。 状況としては、 「客先のデータを社内に持ち込んでRDBQなどで見てみたところ 半角のカタカナなどで表示されるものの、 #NFCNVでDOSに変換すると文字化けする」ということです。 説明が足りなくて申し訳ありません。 何らかの対応コード表さえあれば 力技で変換できるのでしょうが、 カタカナの対応コードがよく分かりません… 52DISKLは試していないのですが、やってみる価値はありそうです。 ともかくもありがとうございました。 5:Re: tahrayan 06/07 00:02 2バイト半角文字は、NEC拡張文字です。 S100内部コードの6760から68EFあたりの文字が、 JISコードの2921から2B7E辺りに割り当てられています。 文字の名前に「NEC」と付いていることで分かるように、 Windows上には無い文字です。 あまり役に立たないかと思いますが、NEC拡張文字の S100内部コードとJISコードの対応表です。 http://www.geocities.jp/tahrayan/utili/neckakucho.lzh Windows側のJISコードの位置には文字が無いので、 この表のまま変換できません。 表の後ろの2列は、半角に変換した場合です。 6:Re: 温泉好きのうさぎ 06/07 00:22 これは外字ではなく、2バイト半角文字です。JISコードでいうと、NX”2921”からNX”297E”およびNX”2A21”からNX”2A7E”であり、内部コードで表現すると、前半1バイトが””67””および””68””となります。 2バイト系文字でありながら、通常の全角文字の半分の幅しかなく、またプリントするときにピッチ詰めも可能なので、ANKでは1行に136桁しか印字できないところを、180桁ほど印字できるようになります。 Express5800/600シリーズのA−VXでは、画面、印字ともに正常に表現されるはずです。 また、#NFCNVでは変換しても、DOSには該当する文字がありませんので、「・」になってしまうのでしょう。 ちなみに、外字は内部コードで表現すると、前半1バイトが””EB””から””EF””までと””FA””から””FF””までです。 7:Re: 温泉好きのうさぎ 06/07 13:41 上記の私の投稿中に、2バイト半角文字として、NX”2B21”からNX”2B7E”も含まれていることが、抜けていました。これらの前半1バイトの内部コードは、””69””です。 これらの文字は、罫線文字とクオーテーションやカッコなどの記号ですが、私のWSエミュレータでは正しく表現できていません。罫線文字は全角と同じ大きさになっており、その他の記号は空白となっています。(そのため、上の投稿で見落としていました) 8:ありがとうございました あゆりーな 06/10 18:55 皆様の返信、大変参考になりました。 一文字ずつ変換するルーチンも作れそうです。 これでデータ変換できます。 ありがとうございました。 |