9件の投稿を表示中 - 16 - 24件目 (全24件中)
  • 投稿者
    投稿
  • #7765

    obott
    メンバー

    >>巨大ファイルを開く場合、巨大ファイルコントローラを使用して開いているのでしょうか? その際、ファイル全体を開いて保存しているのでしょうか? あるいはファイルの一部を開いて保存しているのでしょうか? ファイルの一部を開いて保存する場合、開いている部分以外に不正な文字が存在していても、そこは変換無しで保存するため、ファイルの保存前後でバイナリに違いが発生しないことになります。

    私は以下の様にしています。
    ファイルの一部を開くってことが理解できないので、、、

    ツールバーのオープンを押して巨大ファイルを開くとウインドウの右側に「巨大ファイルコントローラー」とかいう物が勝手に開きます。
    そのままにしていると途中で
    「指定したエンコードで変換できない文字が含まれています。
    編集を続行して保存するとファイルの中身が破壊されます。」
    が出て
    その一番下の選択肢を選択して、開き終わるのを待ちます
    その後ファイルの先頭行に空行を挿入してその空行を削除します。
    上書き保存を実行します。

    以上の操作ではファイルの全部を開いたことになっていないのでしょうか?

    #7766

    obott
    メンバー

    >>前回羅列された文字はどこから抽出されたものでしょうか? 小さなファイルからでしょうか? 巨大ファイルからでしょうか? どのファイルから抽出された文字の一覧もわかると何か手がかりが得られるかと思います。

    羅列された文字とは、羅列した文字コードのことですか?
    それなら、巨大なファイルに存在している文字コード全てを昇順に羅列したものです。出現回数とかは書いてません。

    その時には「小さなファイル」のことはぜんぜん話に出ていないので
    必然的に巨大なファイルからになると思いますが、、どこをどうすれば「小さなファイル」から抽出したと思えるのか、、、、?

    「小さなファイル」は、4つの変な文字コードが出現する段落だけを集めて作りました。
    巨大なファイルと小さなファイルでの動作の違いかなと思ったので

    >>こちらのテストでは、変換前と変換後の2つのファイルをバイナリで比較すると上の4つの文字が異なっていました。
    ↑のテストはどのくらいのサイズのファイルで行われたのでしょうか?

    #7767

    Yutaka Emura
    キーマスター

    こちらでテストを行ったファイルを http://www.emeditor.com/pub/sjis.zip に公開しましたので、ダウンロードして試していただけると幸いです。この中の sjis1.txt は、obott 様が書いていただいたコードの羅列をテキスト ファイルにしたものです。sjis1.txt を EmEditor で Shift-JIS で開こうとすると、警告メッセージが出ますので、そのまま続行して開くと、「行、桁の表示方法」が、「論理座標(2バイト文字を2桁と数える)」の場合、2 行 883 桁目の「┗」と「・」の間にカーソルが移動し、「・」が変換できない文字であることがわかります。そして何も編集しないで sjis2.txt に名前を付けて保存を行います。両者のファイルをバイナリ比較すると、以下のようになります。

    >fc /b sjis1.txt sjis2.txt
    Comparing files sjis1.txt and sjis2.txt
    00000374: 86 81
    00000375: 49 45
    00000376: 86 81
    00000377: A2 45
    00002DA4: EE FA
    00002DA5: EF 40
    00002DA6: EE FA
    00002DA7: F0 41

    再現しますでしょうか?

    >問題が発生する文字に自動的にジャンプする機能ジャンプした位置がぜんぜんずれていました。

    というのは理解せずに書いてしまい申し訳ありませんでした。

    >以上の操作ではファイルの全部を開いたことになっていないのでしょうか?

    巨大ファイル コントローラで、「ファイル全体を開く」がチェックされていれば、ファイルの全部を開いたことになります。

    以上、どうぞよろしくお願いいたします。

    #7775

    obott
    メンバー

    やっぱり巨大なファイルでの確かめは一度たりとも行われていないのですね、、

    仕方が無いので、、、、
    時間が有る時に、再現する単純なデータを作ってみます。

    #7777

    Yutaka Emura
    キーマスター

    obottさんは書きました:
    やっぱり巨大なファイルでの確かめは一度たりとも行われていないのですね、、

    仕方が無いので、、、、
    時間が有る時に、再現する単純なデータを作ってみます。

    私の理解が悪くて、申し訳ありません。巨大ファイルの場合だけ問題が発生するということを、よく理解しておりませんでした。既定の設定では、[カスタマイズ] の [高度] タブで、[変更されていない行を元のファイルから読む] がチェックされていて、[一時ファイルを使う最小ファイル サイズ] テキスト ボックスに指定するファイル サイズが、300 MB になっています。つまり、300MB 以上の巨大ファイルの場合、ファイルの保存時、変更のある行は、エンコードの変換が行われますが、変更のない行は、エンコードの変換を行わずに保存することによって、速度の向上と使用メモリの削減を行っています。これは、EmEditor の仕様であり、不具合ではありませんが、ファイルを開いたときの警告表示が紛らわしい場合は、表示を見直します。

    この度は、obott 様には、何度も書いていただくことになり、ご迷惑をお掛けして申し訳ありませんでした。ご報告をいただき、ありがとうございました。

    #7780

    obott
    メンバー

    >>やはり、巨大ファイルの場合のみ
    >>バイナリで違うファイルになっていませんでした。

    >>この下再表記:
    >>この結果から、推測すると、、、
    >>貴エディタは、巨大ファイルの変更点の記憶方法に
    >>問題が有り、このような時に、実は変な文字コードによる変更は記憶していないので、、
    >>上記結果の様になるのではないでしょうか?
    >>説明追記:
    >>巨大はファイルの場合は変な文字コードによる変更は単純な上書き時には反映されず、
    >>小さいファイルの場合は変な文字コードによる変更は、必ず反映される。

    何度も何度も、巨大ファイルでって書いてるのに、、、、、

    >>つまり、300MB 以上の巨大ファイルの場合、ファイルの保存時、変更のある行は、エンコードの変換が行われますが、変更のない行は、エンコードの変換を行わずに保存することによって、速度の向上と使用メモリの削減を行っています。これは、EmEditor の仕様であり、不具合ではありませんが、ファイルを開いたときの警告表示が紛らわしい場合は、表示を見直します。

    仕様を誤認させるダイアログ表記、、、十二分に、不具合だと思いますが、、、、、、
    再現する単純な巨大ファイルを作って確かめてましたよ、、、、、まったくの徒労に終わったけれど、、

    まっ、それはそれとして、、
    仕様を誤認させない様な表記に変更するのでしょうから、、

    仕様変更要望として、、
    1.文字コード異常時のダイアログでの選択肢として、全ての変な文字コードの変更が実際に行われる処理も欲しいですね。
      もちろん、多少は時間がかかる旨明記するとして、
      そうするとユーザーが全ての変な文字コードが変更された物を別ファイル名にして、元のファイルとバイナリ比較したりして調べる事が出来るから、

    上記変更要望は対応して頂けますか?
    対応して頂けるとしたら、いつ頃でしょうか?

    ご回答お待ちしています。

    #7781

    snow
    参加者

    購入された上でならまだしも、試用の段階で対応時期まで回答を要求するのはいかがなものでしょう。
    検証の不手際のせいでイライラされた気持ちも分かりますが、少し冷静になられては。

    今更書いても意味ないですが、今回のは私も、巨大ファイルへの挙動の問題だろうと思っており、「江村さんはどれくらいのファイルで検証したのだろう?」とは思っていました。
    仕様がはっきり分からなかったので、書く時期を逸してしまいましたが…。

    #7782

    obott
    メンバー

    >>購入された上でならまだしも、試用の段階で対応時期まで回答を要求するのはいかがなものでしょう。

    購入前だらこそ、聞いているのですよ

    対応しないって言われたら、購入しなければ良いだけですからね、、、、、、

    まったく、中身の無い、、「たびたびの横槍」、、
    ありがとうございます。

    #7783

    Yutaka Emura
    キーマスター

    obottさんは書きました:
    >>やはり、巨大ファイルの場合のみ
    >>バイナリで違うファイルになっていませんでした。

    >>この下再表記:
    >>この結果から、推測すると、、、
    >>貴エディタは、巨大ファイルの変更点の記憶方法に
    >>問題が有り、このような時に、実は変な文字コードによる変更は記憶していないので、、
    >>上記結果の様になるのではないでしょうか?
    >>説明追記:
    >>巨大はファイルの場合は変な文字コードによる変更は単純な上書き時には反映されず、
    >>小さいファイルの場合は変な文字コードによる変更は、必ず反映される。

    何度も何度も、巨大ファイルでって書いてるのに、、、、、

    >>つまり、300MB 以上の巨大ファイルの場合、ファイルの保存時、変更のある行は、エンコードの変換が行われますが、変更のない行は、エンコードの変換を行わずに保存することによって、速度の向上と使用メモリの削減を行っています。これは、EmEditor の仕様であり、不具合ではありませんが、ファイルを開いたときの警告表示が紛らわしい場合は、表示を見直します。

    仕様を誤認させるダイアログ表記、、、十二分に、不具合だと思いますが、、、、、、
    再現する単純な巨大ファイルを作って確かめてましたよ、、、、、まったくの徒労に終わったけれど、、

    まっ、それはそれとして、、
    仕様を誤認させない様な表記に変更するのでしょうから、、

    仕様変更要望として、、
    1.文字コード異常時のダイアログでの選択肢として、全ての変な文字コードの変更が実際に行われる処理も欲しいですね。
      もちろん、多少は時間がかかる旨明記するとして、
      そうするとユーザーが全ての変な文字コードが変更された物を別ファイル名にして、元のファイルとバイナリ比較したりして調べる事が出来るから、

    上記変更要望は対応して頂けますか?
    対応して頂けるとしたら、いつ頃でしょうか?

    ご回答お待ちしています。

    [カスタマイズ] の [高度] タブで、[変更されていない行を元のファイルから読む] のチェックを外していただければ、ご希望のようにすべての文字コードが変更されたものを別ファイル名として保存することができます。

9件の投稿を表示中 - 16 - 24件目 (全24件中)

このトピックに返信するにはログインが必要です。

友達に知らせる... Tweet about this on TwitterShare on FacebookShare on Google+Email this to someone