私は窓にファイルを持っています。私はC++で書いています。私はファイルの終わりからいくつかのバイトを削除する必要がある問題があります。私はifstreamを使用していますが、これらの文字を取り除く方法はわかりません。単純に '\ 0'をファイルに入れますか?バイナリファイルを変更する
答えて
(): http://linux.die.net/man/2/truncate
のWindowsマシンでは、SetEndOfFileを(使用):
http://msdn.microsoft.com/en-us/library/aa365531%28v=vs.85%29.aspx
はどちらも、OS依存の呼び出しです。
ウィンドウにSetEndOfFileを使用する。私は私が終わりたいと思う場所に捜すことを得なければならない、そして私は方法を使用する?もう一度開いてEOFに行くと、新しいサイズになりますか? –
updated ...リンクを参照してください。あなたがあなたの 'EOF'をしたい場所に捜す必要があると書かれています。 –
なぜファイルを切り捨てませんか? chsize()
メソッドを見てください。 Linuxマシン、使用TRUNCATEで
ifstream APIのifstream –
はiostreamsの一部ではありません。ファイルと呼ばれる別のメソッドです。ファイルのサイズを変更するので、末尾のバイトを削除します。これはおそらくあなたが望むものでしょうか? ) – Nim
ウィンドウにchsizeを使用する。もう一度開いてEOFに行くと、新しいサイズになりますか? –
ファイルのサイズを移植的に変更することはできません。それを行う唯一の方法は、ファイルを一時ファイルにコピーし、元のファイルを削除して一時ファイルの名前を変更することです。
ファイルを切り捨てる場合に限って、WindowsとUnixの両方(ただし必ずしも他のシステムではない)は、これを行うことができるシステムレベルの機能を持っていますが、それをサポートする標準には何もありません。最後に他のバイトを削除しなければならない場合は、WindowsやUnixのどちらでも許可されません(ただし、少なくとも特定の場合は他のシステムでも同じです)。
私は最終的にそれを行う必要があり、途中で始めることはできません。私の質問は、私がWindowsでそれを使用している場合は、OSの他のすべての内部パラメータが変更のために更新されますか? –
ブーストを使用したい場合、1.46は移植性を可能にする 'resize()'メソッドをサポートしています。なぜなら、最初から謎に包まれていなかった理由です... – Nim
@Romanシステムに依存する機能では、システムがそれを指定するものを実行します。システム仕様でファイルを切り捨てると指定すると、ファイルが切り詰められます(またはシステムにバグがあります)。 –
- 1. バイナリファイルの情報を取得、変更しますか?
- 2. バイナリファイルをASCIIに変換する方法
- 3. バイナリファイルをイメージに変換する
- 4. テキストファイルをcのバイナリファイルに変換する
- 5. index.htmlをindex.phpに変更すると「バイナリファイルを保存」が返されます
- 6. 全身を扱わずに大きなFortranバイナリファイルの先頭を変更する
- 7. git checkoutの後に変更されたバイナリファイル
- 8. Linuxシェルでバイナリファイルの途中でバイトを更新するには?
- 9. TFSソース管理でバイナリファイルを更新する
- 10. バイナリファイル
- 11. C#バイナリファイルをロードする
- 12. バイナリファイルをJavascriptでダウンロードする
- 13. バイナリファイルを修正するPython
- 14. バイナリファイルをSVNにコミットする
- 15. Wininetでバイナリファイルをダウンロードする
- 16. Javaバイナリファイルをロードする
- 17. C#でバイナリファイルをキャッシュする
- 18. バイナリファイルを保存する
- 19. バイナリファイルでパターンを検索する/バイナリファイルで一致するものを探す(C)
- 20. 1と0の文字列をバイナリファイルに変換する
- 21. ChromeがUTF-8に変換してバイナリファイルを破損する
- 22. バイナリファイルをBase64文字列に変換する
- 23. クライアント側のコードでバイナリファイルをBase64に変換する
- 24. JavaScript:jpegイメージタグを生のバイナリファイルに変換するには?
- 25. バイナリファイルを読み込んでバイナリ文字列に変換する
- 26. バイナリファイルをASCIIのcharectersのセットに変換する方法
- 27. バイナリファイルの変数のデータ型をチェックする方法
- 28. C++バイナリファイルを読み込んで16進数に変換する
- 29. Javaオブジェクトをバイナリファイルに変換する方法
- 30. 保持しているバイナリファイルを持つバイナリファイル
iofstream?本気ですか? –