javascriptでjsonファイルの更新をしたいと思ってます。
変更した部分のみ更新する方法がよくわからなかったので
一度、元のファイルを消して更新したデータを同じ名前のファイルに保存する方法を実行しようとしているのですが、元ファイルを消すところでエラーが出てしまっていて何が原因なのかわかりません。
どなたか、更新方法を知っている方がいらっしゃいましたら教えていただきたく思います。
javascript
1var fs = new ActiveXObject( "Scripting.FileSystemObject" ); 2var filesT = fs.OpenTextFile( "****.json", 1, false, 0 ); 3var filesStr = filesT.ReadAll(); 4var filesJ = JSON.parse(filesStr); 5filesT.Close(); 6 7////filesJを更新する 8////ex)filesJ.** = "aa" 9 10//元ファイルを削除 11var fd = new ActiveXObject( "Scripting.FileSystemObject" ); 12fd.DeleteFile( "****.json",true); 13//新しいデータを保存 14var fw = new ActiveXObject( "Scripting.FileSystemObject" ); 15tf = fw.CreateTextFile("****.json", true); 16tf.WriteLine(filesJ) ; 17
SCRIPT70: 書き込みできません。
ファイル内容取得部分の処理を通さずに、ファイルを消すだけの処理を動かすとどうなりますか?
WSHでしょうか? タグをつけたほうが回答がつくと思われます。
mts10806さん、変更部分をなくして実行したらエラーなく実行できました。
そして今日もう一度実行してみたらjsonファイルの削除はうまくできました
状況からの推測でしかないのですが、削除用のActiveXObjectであるfd が掴んだままだったのかもしれません。オブジェクトを1つでまとめるか、明示的に解放してから次の処理に移った方がいいかもしれませんね
なるほど。今後、気をつけます
自身で回答を書き自己解決としてはいかがでしょうか?teratailでは質問者自身で回答を書き「ベストアンサー」とすることで「自己解決」ができるようになっています。 https://teratail.com/help#resolve-myself
あなたの回答
tips
プレビュー