VB2010でのバイナリファイルの書き込みについての質問です
ある構造体の配列変数Record()をFileOpenとFilePutを使って
N:ファイル番号
SaveFileName:ダイアログで取得した出力ファイル名
RecordSize:配列のサイズ
N = FreeFile()
FileOpen(N, SaveFileName, OpenMode.Binary, OpenAccess.Write, OpenShare.LockReadWrite)
Seek(OpenFileNumber, 1)
For i As Long = 0 To RecordSize
FilePut(N, Record(i))
Next
FileClose(N)
といった感じで実装しています(実際にはエラー処理のためTry〜End Tryの中に記述)
通常はこの処理で問題ないんですが、既に存在しているファイルに上書きしようとした場合、既存のファイルが上書きしようとする
ファイルよりも大きいと、余った分のサイズが上書きされず前の古いファイルの内容が残ってしまいます
上書き時に既に存在するファイルを完全に置き換える(つまり古いファイルは消える)にはどうすればいいのでしょうか?
ファイルをオープンする前にSaveFileNameに該当するファイルがあるかどうか調べて、ある場合は既存のファイルを削除してから
書き込むようにすればいいんでしょうけど、何かこうスマートではない気がして・・・
探検
VB.NET質問スレ(Part43) [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
646デフォルトの名無しさん
2017/07/17(月) 11:23:52.04ID:nd0ZPw8t■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【中国】日本のアニソン歌唱中に強制中断 上海、照明落とされ音楽止まる★4 [♪♪♪★]
- 「報道特集」山本恵里伽アナ、日中緊張で「当たり前のことがはっきり言いづらい空気…ショック」 [首都圏の虎★]
- 【地方】「もうヤメとけ、また移住者様が帰っちゃうぞ」田舎の「いじめ体質」★2 [七波羅探題★]
- 【イオン】中国湖南省に新大型店を開業 混乱なく地元客でにぎわい モール内にユニクロや無印良品★2 [1ゲットロボ★]
- 「まだ朝7時に通勤してるんですか?」にじさんじVTuberがXの投稿で炎上、YouTubeで釈明と謝罪 [muffin★]
- 「怒りに震えて涙が出た」 同性婚認めず「合憲」判断に原告が反発 「差別的な判決だ」 ★4 [ぐれ★]
- 【実況】博衣こよりのえちえちラムベガス🧪★2
- TBS山本恵里伽アナ「当たり前のことをハッキリ言いづらい空気、ショック」高市発言騒動に関連して [369521721]
- 夜が手を伸ばしそっと引っ張って、また何か言おうとしてるから🌻🏡
- (´・ω・`)怨念が…
- 【悲報】一番くじ、デスノートのL、見本と違い実物はただのアホ丸出しガイジにしか見えず炎上中wwwwwwwwwwwwwwwwwwww [802034645]
- 【悲報】X医者「もう遅い!」をやって炎上wwwwwww [394133584]
