メモリが 2 GB を超える .txt ファイルがあります。問題は、メモ帳、メモ帳 ++、またはその他のエディター プログラムで開くことができないことです。
解決策はありますか?
メモリが 2 GB を超える .txt ファイルがあります。問題は、メモ帳、メモ帳 ++、またはその他のエディター プログラムで開くことができないことです。
解決策はありますか?
グロッグを試してみてください。高速でスマートなログ エクスプローラー。
サイズが約2 GBのログ ファイルを開きましたが、検索も非常に高速です。
ワードパッドは、サイズに関係なく、あらゆるテキスト ファイルを開きます。ただし、テキスト エディターに比べて機能が限られています。
ファイル全体を読み込んだり読み込んだりする代わりに、ツールを使用してテキスト ファイルを小さなチャンクに分割することができます。Linux を使用している場合は、split
コマンドを使用できます (このスタックオーバーフロー スレッドを参照してください)。Windows の場合、 HJSplitなどのいくつかのツールを利用できます(このスーパーユーザー スレッドを参照してください)。
UltraEdit を使用して大きなファイルを編集しています。UltraEdit で開いた最大サイズは約 2.5 GB でした。また、UltraEdit には、Notepad++ と比較して優れた 16 進エディターがあります。
EmEditor は私にとって非常にうまく機能します。シェアウェア IIRC ですが、ライセンスの有効期限が切れても動作を停止しません。
私はいつも010 Editorを使って巨大なファイルを開きます。2GBなら問題なく扱えます。010 Editorで50GBのファイルを操作していました:-)
現在は商用ですが、試用版があります。
ファイルを読むだけなら、Large Text File Viewer をお勧めします。 https://www.portablefreeware.com/?id=693
また、これを参照してください
大きな(巨大な、巨大な、大きな)テキストファイルを開くためのテキストエディタ
独自のツールを作成したい場合は、これを試してください。私はあなたがC#のファイルストリームリーダーを知っていると思います
const int kilobyte = 1024;
const int megabyte = 1024 * kilobyte;
const int gigabyte = 1024 * megabyte;
public void ReadAndProcessLargeFile(string theFilename, long whereToStartReading = 0)
{
FileStream fileStream = new FileStream(theFilename, FileMode.Open, FileAccess.Read);
using (fileStream)
{
byte[] buffer = new byte[gigabyte];
fileStream.Seek(whereToStartReading, SeekOrigin.Begin);
int bytesRead = fileStream.Read(buffer, 0, buffer.Length);
while(bytesRead > 0)
{
ProcessChunk(buffer, bytesRead);
bytesRead = fileStream.Read(buffer, 0, buffer.Length);
}
}
}
private void ProcessChunk(byte[] buffer, int bytesRead)
{
// Do the processing here
}
これを親切に参照してください
http://www.codeproject.com/Questions/543821/ReadplusBytesplusfromplusLargeplusBinaryplusfilepl
閲覧と編集には、Geany for Windowsも良い選択肢です。Notepad++ の問題を制限するために実行しましたが、Geany の問題はまだ解決していません。