
No.2ベストアンサー
- 回答日時:
'----------- ファイルシステムオブジェクト作成
Set objFso = CreateObject("Scripting.FileSystemobject")
'----------- 定数の作成
Const ForReading = 1 '読取フラグ
Const ForWriting = 2 '書込フラグ
Const ForAppending = 8 '追記フラグ
Const InsertLine = 2 '文字列の挿入行
Const InsertText = "Inserted!" '挿入する文字列
Const strPath = "test.txt" '処理するテキストファイルのパス
'----------- ファイルが存在することを確認
If objFso.FileExists(strPath) = False Then
MsgBox "指定のファイルがみつかりません"
WScript.Quit 'なければ終了
End If
'----------- テキストの行数を確認
Set objRead = objFso.OpenTextFile(strPath , ForReading) '読取モードでテキストを開く
objRead.ReadAll '全部読むことで最終行へ移動
intLine = objRead.Line '現在の行数を確認
objRead.Close '読取モード閉じる
'----------- テキストの挿入
If intLine <= InsertLine Then '挿入行がテキストの行数より大きいか、同じの場合
Set objAppending = objFso.OpenTextFile(strPath , ForAppending) '追記モードでテキストを開く
objAppending.WriteLine InsertText '挿入行の追記
objAppending.Close '追記モード閉じる
Else '挿入行がテキストの行数より小さい場合
Dim WritingText '書込用の文字列(省略可)
Set objRead2 = objFso.OpenTextFile(strPath , ForReading) '読取モードでテキストを開く
i = 1 '行数の確認用の数値
Do Until objRead2.AtEndOfStream = True '終了行まで繰り返し
If i = InsertLine Then '挿入行が来たら、文字列を挿入
WritingText = WritingText & InsertText & vbCrLf 'vbCrLfは改行コード
End If
WritingText = WritingText & objRead2.ReadLine & vbCrLf '1行読み取り、書込用の文字列に追加
i = i + 1 '読み取った行数を1増やす
Loop
objRead2.Close '読取モード閉じる
Set objWriting = objFso.OpenTextFile(strPath , ForWriting) '書込モードでテキストを開く
objWriting.Write WritingText '書込用の文字列値を一気に書込み
objWriting.Close '書込モード閉じる
End If
'----------- 完了メッセージ
MsgBox "挿入完了"
見やすくするため全角スペースを入れてあります。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- USBメモリー・SDカード・フラッシュメモリー 銀行が振込データの受け渡しに未だにFDを使っている理由は「FDDがAドライブ固定だから」って本当? 11 2022/06/02 03:53
- その他(恋愛相談) 膣の平均は8〜12cmと言われていますが、時には7cmや5cmなどもいると思います。ネットの記事を見 3 2023/02/23 19:06
- 避妊 今日挿入無しの行為をしましたが行為後少し寝てしまいました。この間に何か指入れなどされた可能性を考えて 2 2023/07/14 02:04
- Java java 次の機能を有するメソッドを自クラスに作成し、実装したいです。 機能 名前判定機能 →名前が 3 2022/06/16 16:08
- Excel(エクセル) 列を挿入しても式の一部を固定するには 6 2023/05/31 21:57
- その他(プログラミング・Web制作) 変換のプログラムを教えてください。 6 2023/07/01 09:57
- 避妊 挿入なしで、指入れされました。気をつけてはいたのですが、指に我慢汁がついてる可能性が完全に否定できま 4 2023/04/09 15:08
- Visual Basic(VBA) セルに抜けた番号の代わりに空白を挿入する 4 2023/04/10 20:29
- 避妊 着床出血で4日続き、量が増えることはありますか?排卵予定日前に、挿入なしですが、てまんをしました。精 2 2023/02/25 23:19
- Java javaでのプログラム(配列)について質問です. 2 2022/10/14 22:27
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
テキストファイルの行数を取得...
-
fprintfで出力するファイルのパ...
-
バイナリファイルをテキストフ...
-
EOF判定されない
-
ファイル内のデータを1行削除...
-
fgetsで2行目から文字化け
-
0バイトファイルの作成
-
VS2010 MFC CStdioFileについて
-
文字化けを直したい
-
freadでファイルを読み込んだ際...
-
VBSで指定行に挿入
-
どんなプログラムを書いても指...
-
FTPでputすると空ファイルが出...
-
Access クエリ実行が急に非常に...
-
フルパスから最後のディレクト...
-
セルに入力されたパスでフォル...
-
バッファとは何ですか
-
C言語初心者の質問失礼します。
-
VB.NETで他のプロジェクトで作...
-
「UNCパスはサポートされません...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
バイナリファイルをテキストフ...
-
テキストファイルの行数を取得...
-
ファイル内のデータを1行削除...
-
巨大なテキストファイル(可変...
-
複数テキストファイルを読み込...
-
fgetsで2行目から文字化け
-
【VB.Net】バイト型配列に読み...
-
改行までの一文字ずつのファイ...
-
C言語での改行コードの扱いにつ...
-
InternetReadFileで大きいファ...
-
C/C++ ファイル入出力操作 (長...
-
fopenで開いたファイルのサイズ...
-
fopen(書き込みモード)でファイ...
-
テキストファイルの文字列の削除
-
ファイル読み込みについて
-
C言語のローカル変数の使い方に...
-
freadとfwrite
-
EOF判定されない
-
続・EOF判定されない
-
fortranで文字列を読み込む際の...
おすすめ情報