変数+.txt形式で出力するには?

解決


HIKARI  2002-03-18 23:01:14  No: 104100

ファイルコピーの際に、コピー先のファイル名を
「変数.txt」の形で出力したいのですが、どう指定すれば
出来るのか分かりません。
仕方ないので今は変数名のDOSファイルで出力しています。
どなたか教えてください。お願いします。


たかみちえ  URL  2002-03-19 09:28:00  No: 104101

ファイル名を変数に入れて、
.txtをつけて、コピーさせればいいと思いますけど…。

  2重に拡張子をつけたくないなら、
事前に"."からあとを削除しておいて(InstrRevで.までを検索して、Mid関数をつかってその戻り値よりあとを切り取る)、
また.txtをつけてあげればいいですね。


HIKARI  2002-03-19 22:55:10  No: 104102

えっとすみません。.txtのつけかたなんですが、
例えば(全然「例えば」じゃなくてすごい具体例ですけど・・)今こうなっているのですが、
bResult = COPYFILE("c:\config.sys", "d:\my documents\ " & Valuedate & ".txt", 0)  ※Valuedateが変数です。
これだと、.txtがつかないんです(TT)。
ただの変数名のファイルが出来てしまうところをみると、.txtを認識してくれてないと思うのですが、これをどう変えれば、Valuedate(変数).txtファイルになるのでしょう?


マザー  2002-03-20 00:34:29  No: 104103

Vb関数のFileCopyでは無いのですか?
ちなみに自分の所で簡単なロジックでお題
同様の処理はできましたが?


HIKARI  2002-03-20 07:10:37  No: 104104

関数は諸事情によりAPI関数のCopyFileを使いました。
で、まことに申し訳ありません。出来てしまいました。
変数はレジストリから引っ張ってきていたのですが、どうもその際に
ごみが入ってしまっていたようです。
お騒がせして申し訳ありませんでしたm(__)m


たかみちえ  URL  2002-03-20 07:11:36  No: 104105

んと、APIのCOPYFILEですよね?

  使ったことがないのでよくわかりませんけど、
bResult = COPYFILE("c:\config.sys", "d:\my documents\ " & Valuedate & ".txt", 0)
Valuedateに、ファイル名につけてはいけない文字(:/;とか)を入れていると、
関数が失敗します。
(どんな文字がいけないかは、適当なファイルを右クリックして、名前の変更で、":"を入れてみてください。注意書きに出てます)

  Valuedateという変数名からすると…。
日付じゃないですか?
それだったら、Format関数(使い方はヘルプ参照)か何かで、:とかを取り去るとかすると、
保存できると思いますけど…。

  おせっかいかも…ですけど、
もし問題ないようなら、VB標準の関数を使ったほうがいいです。
そのほうがソースも散らからないし、
何よりエラーが起こると、すぐにわかります。
(戻り値がどうの以前に、VBでエラーが起こってとまるので)
「FileCopyがすごく遅い!」って言う話は聞かないし^^;


HIKARI  2002-03-20 07:11:45  No: 104106

解決チェック入れ忘れました。
解決です。
ありがとうございました。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加