HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2008
0306
makeファイル削除のエラーについて10解決


make

リンク

2008/3/6(Thu) 02:43:25|NO.13957

例としてMy Documentsにtest01.txtとtest03.txtファイルがあり
順番に削除(test01.txt〜test03.txt)しようとして
該当するファイル(test02.txt)がなかった場合
「ファイルが見つからないか無効な名前です」のエラーとなってしまうのですが
test02.txtを素通りしてtest03.txtを削除できるようにするには
どうすればいいのでしょうか?

(My Documentsにtest02.txtは存在しない)
chdir "C:\\Windows\\My Documents"
delete "test01.txt"
delete "test02.txt" ;→エラーになる
delete "test03.txt" ;→削除できない



この記事に返信する


naznyark

リンク

2008/3/6(Thu) 02:50:52|NO.13959

削除前にそのファイルがあるかどうかを確認して
なければ削除しないようにすれば良いです。



make

リンク

2008/3/6(Thu) 03:45:12|NO.13960

すみません、全然わからないので
もう少し詳しく説明して頂けると助かります

dirlist命令を使うと思うのですが
chdir "XX"
dirlist
存在したファイル→処理?
存在しないファイル→処理?

具体的にどう書けばいいのか検討がつかないです



z

リンク

2008/3/6(Thu) 08:19:27|NO.13962

dirlistを使ってもできると思いますが、existを使ったほうが簡単だと思われます。
使い方はヘルプを見てください。



make

リンク

2008/3/6(Thu) 20:47:41|NO.13985

すみません、質問の仕方が悪かったようです
質問をする前から確認をするとかexistを使うとかは
なんとなくわかっていまして、それをどのように書いたら
いいかわからないので質問している次第であります<(_ _)>
どうかよろしくお願いします

chdir "C:\\Windows\\My Documents"
exist "test01.txt"
exist "test02.txt"
exist "test03.txt"

strsize -1 → XXX ;→無視して次のファイルを検索?
strsize → XXX ;→ファイルが存在する場合ファイルを削除?

delete "test01.txt"
delete "test02.txt"
delete "test03.txt"



KENTA

リンク

2008/3/6(Thu) 21:47:38|NO.13987

ファイルを削除する直前にexistでファイルの有無を確認して、
strsizeが-1でなければ削除するという順序で確認すればいいと思います。

exist "〜" if strsize!-1 : 処理



make

リンク

2008/3/7(Fri) 00:18:02|NO.13995

例として普通に素通りしてくれればいいんですがエラーになってしまいます
どうすればいいんでしょうか?

chdir "C:\\Windows\\My Documents"
exist "test01.txt"
if strsize!-1 : goto *label ;エラーになります
delete "test01.txt"

*label
exist "test02.txt"
delete "test02.txt"



As

リンク

2008/3/7(Fri) 01:14:05|NO.14000

>if strsize!-1 : goto *label ;エラーになります>

これだと、  ファイルが見つからなかった場合 "以外" 実行

という流れになりますよ



make

リンク

2008/3/7(Fri) 01:37:32|NO.14003

すみません、エラーが出ず飛ばして実行できればとりあえずそれでいいので
解決するためにはどう書けばいいかご教示頂けたら幸いです



begriff

リンク

2008/3/7(Fri) 01:57:02|NO.14005


;chdir "C:\\Windows\\My Documents" *l count++ if count=10:stop//十回の一回前でストップ filename="test"+strf("%02d",count)+".txt"//数字を1 2 3 4 5 ではく01 02 03 04 05 にする exist filename if strsize!-1{ //ファイルがない場合 でない時に カーリーブラケット内実行 dialog ""+filename+"があります。削除しますか?",3//問いかける if stat=6:delete filename//「はい」なら削除 } goto *l//繰り返す ↑
こんな流れでやればいいと思います。



make

リンク

2008/3/7(Fri) 03:35:30|NO.14009

>begriffさん
高度なスクリプトを頂き感謝感謝です
ありがとうございます<(_ _)>



ONION software Copyright 1997-2023(c) All rights reserved.