
No.2ベストアンサー
- 回答日時:
ファイルを開かずにファイルを編集することは出来ません。
が、「開く」という意味が「ビジュアルなコンポーネントに表示しない」という意味なら可能です。
char chr[3] = { '\0' };
TFileStream* fstrm = new TFileStream( "ファイル名", fmOpenReadWrite );
if ( fstrm->Size >= 2 )
{
fstrm->Seek( -2, soFromEnd );
fstrm->Read( chr, 2 );
if ( strcmp( chr, "\r\n" )==0 )
fstrm->Size = fstrm->Size - 2;
}
delete fstrm;
ただ、正直言いますと、このような操作が必要な状況というのがいまいち分かりません。
No.3
- 回答日時:
No1さんの回答に対して、iniファイルのように使いたい
とのことから、そのファイルはシステム内のいろいろな
プログラムから読み取り・更新をするような設定ファイル
系のファイルなので、できるだけファイルを開くような
ことはしたくないという意図ではないかと勝手に想像
しました。また、最後の改行文字を削除するということ
から何らかのOSやフレームワークの環境で使用している
モジュールの使用上、自分が意図しない改行コードが
入ってしまい、それを取り除くのがどうしても必要な
場合があるとか、そういうことだと勝手に想像しました。
本当は本人が詳細に説明するのが一番よいのですが、
とりあえず、この方向性で回答します。
いぜん、金融系のシステムで納期が厳しくて
設定情報をマスタDBにしてやる暇がないときに、
暇な時にあらかじめ作成しておいた以下の
モジュールを使って、設定ファイルの読み取り更新を
排他制御させて、やっていました。
更新したいファイル名にある決まった規則で識別子
をつけたロックファイルをロックする。
設定ファイル名を日付や世代番号をつけた名前で
バックアップファイルにリネームする。
バックアップファイルを読みながら
設定ファイルを元のファイル名で新規作成し、
その際に更新したい変更を反映させながら、
書き込んでいく。
最後にバックアップファイルと新たにできあがった
設定ファイルとのDIFFをとった差分と
該当アプリケーションのほうで変更したいとおもって
いた内容、および、アプリケーションモジュール名
や日付等をログに吐き出して、バックアップファイル
については何世代か世代管理を行なうようにした。
当然、エラーが発生した時はすべて元に戻すような
実装にしていた。
実際には
「設定ファイルを元のファイル名で新規作成し、
その際に更新したい変更を反映させながら、
書き込んでいく。」
の部分を各アプリケーションで必要なときに実装し、
あとは、リンクするだけで再利用するようなモジュールを
作っていた。
あまりにも、昔の話なので、もうソースファイルは
ないです。
なぜ、ファイルを開かないで、改行コードをとりたいのか
なんのためにとか?そういう情報があると、
別の方法をいろいろ考えれるかもしれない。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/06 17:46
- Visual Basic(VBA) VBA 行削除した連番 4 2023/06/27 16:00
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/08/08 11:02
- Visual Basic(VBA) エクセルのマクロについて教えてください マクロを実行すると メッセージボックスが表示されて okをク 4 2023/07/05 19:32
- Visual Basic(VBA) 複数csvを横に追加していくマクロについて 2 2023/04/25 09:19
- Excel(エクセル) マクロでテキストファイルを読み込んだ際の最終セルにデータと改行が含まれる問題の改善方法 2 2022/03/25 16:50
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/21 09:42
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/08/08 15:45
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/08/10 11:34
- Visual Basic(VBA) 3つの条件を指定してVBAで行を削除したい 条件1:分類1が重複 条件2:分類2が重複 条件3:個数 6 2022/06/24 11:07
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
アクセス 壊れた? 「ファイ...
-
#include <Windows.h>というヘ...
-
Latexで図番号だけを「図1.1」...
-
<ファイル3>を開いた時に、<フ...
-
コマンドプロンプトで作成日時...
-
PowerPoint ファイルの結合につ...
-
jarファイル
-
.NETアプリを作ったときの .man...
-
Seasar2のdiconファイルの読み方
-
アクセス権のチェック方法について
-
公文書のxmlファイルの開き方が...
-
リンクの張り付けかたを教えて...
-
reaper音声ファイルについて
-
binファイルを解凍したいの...
-
ストレージにある全てのファイ...
-
Doxygenで#includeのファイル内...
-
ファイル名にドットを使ったフ...
-
sqlite_query()に関する質問
-
C言語---ファイルに出力したデ...
-
exeファイルが作れない(windows10)
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
binファイルを解凍したいの...
-
アクセス 壊れた? 「ファイ...
-
コマンドプロンプトで作成日時...
-
.NETアプリを作ったときの .man...
-
リンクの張り付けかたを教えて...
-
#include <Windows.h>というヘ...
-
Latexで図番号だけを「図1.1」...
-
jarファイル
-
「ブルーファイル」と「グリー...
-
ファイルが開かれているかどう...
-
バッチ処理で追記コピーしたい
-
VBAのバイナリ出力について
-
公文書のxmlファイルの開き方が...
-
コマンドプロンプトで、指定し...
-
監視ツールを入れさせられまし...
-
自分で作成した重要ファイルを...
-
HTMLからのBATファイル実行
-
VBSが起動しない
-
他のMDBのマクロを実行する方法
-
Batファイルをバイナリ形式にす...
おすすめ情報