改行コードが 0a になってしまいました。

解決


snail3  2014-10-01 01:10:42  No: 46716

XE2です。
Webからコードをコピー&修正してコンパイルしたところ

「E2072 要素数(2)が宣言されているもの(25)と異なります」

エラーが表示されました。ソースを見た限りではエラーの
原因が特定できませんでした。16進ダンプしたところ
改行コードが本来 0d 0a になっているところが 0a のみ
になっていました。Delphiで修正しようとしましたが
なぜか修正することはできません。  仕方がないので
別のエデッタ(秀丸)で修正しました。

今後のために、このような時に対処する方法があれば
教えて下さい。


deldel  2014-10-01 01:41:14  No: 46717

webからコピペすると、たまに変な文字(?)がくっ付くことがあるので、
まずメモ帳などに貼り付けて、それからメモ帳上のコードをコピーして
Delphi上にペーストするようにしてますよ。


snail3  2014-10-02 22:21:32  No: 46718

参考にさせていただきます。

既存ソースで改行コードの混在が疑われるので
何か良いツールが無いかと探しましたが、
複数本一度に改行コードを確認するツールは
見つかりませんでした。


snai3  2014-10-02 22:23:00  No: 46719

解決のチェックを入れ忘れましたる


うさ  2014-10-02 23:46:52  No: 46720

「バイナリ  一括  置き換え」などでツールを探して

一度、0d 0aを0aに置き換えて
再度0aを0d 0aに置き換えるのはどうでしょう。

うまくいくようなら原理は簡単なので自作でツールを作ってみるのも
ありかもしれません。


snail3  2014-10-03 17:27:58  No: 46721

>一度、0d 0aを0aに置き換えて
>再度0aを0d 0aに置き換えるのはどうでしょう。
現状、秀丸でも保存で改行コードが選べるので、
問題があるソースは、開いて、保存オプションで
改行コードを変えて書き込むだけです。
問題は改行コードが 0a の行を見つけることです。

実はネットで色々と調べて「FileCode Checker」という
ツールが一番目的に合っていました。が、現状バージョン
では改行コードが混在していると正しく表示されない
仕様になっていました。作者の方から時期は未定ですが
修正していただけるとメールで返事をいただいています。

修正版がリリースされてから既存ソースのチェックを
してみたいと考えています。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加