- ベストアンサー
VBSを利用して、ファイル名を取得する方法とは?
- VBSを利用することで、ファイルのフルパスを取得する方法があります。
- 具体的には、フォルダ内のファイルを順番に取得し、フルパスを表示するプログラムを作成します。
- さらに、取得したファイルの中身を1行ずつ確認し、特定の文字が含まれているかを判定することも可能です。
- みんなの回答 (2)
- 専門家の回答
関連するQ&A
- CSVに外部テキストファイルを列として追加する方法
こんにちは。 CSVファイル(base.csv)の先頭列に、別のテキストファイル(add.txt)の中身を新規の列として挿入したいと考えているのですが、よい方法がわかりません。。。 どうのような方法を使えば対応することができるでしょうか? どうぞよろしくお願いいたします。 ■CSVファイル(master.csv) title,developer_name,seller_name,primary_genre_name,application_url AAA,BBB,CCC,DDD,EEE AAA,BBB,CCC,DDD,EEE AAA,BBB,CCC,DDD,EEE AAA,BBB,CCC,DDD,EEE ■テキストファイル(add.txt) id 000 111 222 333 ↓ ■目標としたファイル(master.csv) id,title,developer_name,seller_name,primary_genre_name,application_url 000,AAA,BBB,CCC,DDD,EEE 111,AAA,BBB,CCC,DDD,EEE 222,AAA,BBB,CCC,DDD,EEE 333,AAA,BBB,CCC,DDD,EEE
- 締切済み
- Ruby
- VBSを利用して、文字列から一部分だけを抜き出す
VBSを利用して、文字列から一部分だけを抜き出す こんにちわ VBSを利用して、csv形式のファイルを読み込んで文字列の一部を抜き出す 処理を行いたいと思っております。 具体的には、csv形式のファイルをtxt形式に置き換えると "aaaa","bbbb","ccc","ddd","あああeee","OS=abcde" というような形で開きます。 ※a~eの文字数は固定ではありません。 このような場合、文字列に「あああ」が含まれていたら、 「ccc」と「OS=*****」をcsvまたはtxtに出力する という処理を行おうとしております。 どのようにプログラムを組めば良いでしょうか。 お手数ですが、ご教授願えれば、助かります。よろしくお願い致します。
- ベストアンサー
- Visual Basic
- フルパスから最後のディレクトリ名を取得したい。
vb.netなのですが、例えば c:\aaa\bbb\ccc\ddd\eee\fff.exe というフルパスがあったとして、 eeeというディレクトリ名を取得したいのですが、 何か良い方法はないでしょうか。 それぞれのディレクトリ名の文字数や階層数は 決まっていないのですが、オススメの方法が ありましたら、教えて頂けると助かります。
- ベストアンサー
- Visual Basic
- C言語による「テキストファイルの読み書き(fprintf)」について
C言語による「テキストファイルの読み書き(fprintf)」について質問です ずぶの初心者ですが、既知のファイルの1行目に指定した文字列を付加させるプログラムを作りたいと思っています。 以下のように作りました。 ------------------------------------------------------------ #include <stdio.h> int main(void) { FILE *fp; fp = fopen("test.csv","r+"); fprintf(fp,"コントロールカラム1,コントロールカラム2,・・・(略)・・・,コントロールカラム56\n"); fclose(fp); return 0; } ------------------------------------------------------------ このとき「test.csv」の内容が以下のようであったとします。(容量は1MBくらいです。) 001,aaa,bbb,ccc,ddd,eee,fff,ggg,hhh,iii,jjj 002,aaa,bbb,ccc,ddd,eee,fff,ggg,hhh,iii,jjj ~(略) 5000,aaa,bbb,ccc,ddd,eee,fff,ggg,hhh,iii,jjj この状態でプログラムをコンパイルして実行すると、「test.csv」の内容が以下のようになってしまいます。(一行目が消える) AAA,BBB,CCC,DDD,EEE 002,aaa,bbb,ccc,ddd,eee,fff,ggg,hhh,iii,jjj ~(略) 5000,aaa,bbb,ccc,ddd,eee,fff,ggg,hhh,iii,jjj またcsvの行が増える度に妙な挙動になっていきます・・・(一行あいたり、先頭行が5行ほど消えたり) 希望する動作としては コントロールカラム1,コントロールカラム2,・・・(略)・・・,コントロールカラム56 001,aaa,bbb,ccc,ddd,eee,fff,ggg,hhh,iii,jjj 002,aaa,bbb,ccc,ddd,eee,fff,ggg,hhh,iii,jjj ~(略) 5000,aaa,bbb,ccc,ddd,eee,fff,ggg,hhh,iii,jjj のようになるようにしたいのですがどのようにすればよいのでしょうか。 よろしくお願いします。 (使用ソフト:Borland C++ Compiler, Cpad) 参考にしたサイトの項目:http://homepage3.nifty.com/mmgames/c_guide/17-01.html
- ベストアンサー
- C・C++・C#
- CSVファイルをAccessに取りこみたい
以下のような2つのCSVファイルがあるとします。 【hoge1.csv】 aaa,bbb,ccc,ddd 1,2,3,4 【hoge2.csv】 aaa,bbb,ddd,eee,fff 1,2,4,5,6 Accessをあまり使用したことがないので教えていただきたいのですが、 hoge1.csv、hoge2.csvを、以下のような形で Accessの1つのテーブルにインポートする事はできるのでしょうか? ---------------------------- | aaa | bbb | ccc | ddd | eee | fff | | 1 | 2 | 3 | 4 | | | | 1 | 2 | | 4 | 5 | 6 | ---------------------------- ※「aaa」「bbb」…をフィールド名としたいです vb等でプログラムを自作するしかないのでしょうか? 何か良い方法がありましたら教えてください。お願いします。
- 締切済み
- その他(データベース)
- VBSについて
VBSについて質問です。プログラミング初心者です。 既定フォルダ内のファイルを選択したフォルダ内にコピーするプログラムを組みたく、 色々調べながら作成してみましたが、うまくいきません。 症状として、選択したフォルダではなく、 プログラムを保存しているフォルダにコピーされてしまします。 選択したフォルダに保存するためには、どのようにすればいいでしょうか? また、下記コードがうまくいかない理由も解説もしてくださると大変助かります。 C:\strFrom ←既定のコピー元フォルダ C:\strTo ←プログラム実行時に選択するコピー先フォルダ C:\VBS ←プログラムを保存しているフォルダ ※ここにフォルダ名「strTo」で「strFrom」内のファイルが保存される Set objFS = CreateObject("Scripting.FileSystemObject") 'ファイルシステムオブジェクト作成 strFrom = "C:\strFrom" 'コピーするフォルダのパス Set shla = WScript.CreateObject("Shell.Application") 'Shellの呼び出し Set strTo = shla.BrowseForFolder(0, "フォルダを選択して下さい", &H1) 'パス取得 WScript.echo strTo.Items.Item.Path '取得パス確認 objFS.CopyFolder strFrom, strTo 'ファイルコピー
- ベストアンサー
- Visual Basic
- VBSでカンマ区切り
お世話になっております。 VBSで、CSVファイルをカンマ区切りで配列にし、 ファイルに書き出したいです。 下記のスクリプトを実行すると3行の改行と これ⇒ ---------------- だけ出力されます。 Splitは使用できないのでしょうか? どこが間違っているのかわかりません。 ご教授いただけませんでしょうか。 '--------------------------------------------------------------- On Error Resume Next Set OBJFS01 = CreateObject("Scripting.FileSystemObject") Set CSVTEXT01 =OBJFS01.OpenTextFile("C:\tmp\CSVTEXT.log") Set LOGTEXT01 =OBJFS01.OpenTextFile("C:\tmp\LOGTEXT.log",8,False) '--------------------------------------------------------------- i = 0 Dim HAIRETU(27) Do While i < 6 HAIRETU(27) = Split(CSVTEXT01, ",") LOGTEXT01.WriteLine(HAIRETU(2)) LOGTEXT01.WriteLine(HAIRETU(3)) LOGTEXT01.WriteLine(HAIRETU(4)) LOGTEXT01.WriteLine("----------------") i = i + 1 Loop LOGTEXT01.close CSVTEXT01.close
- ベストアンサー
- Visual Basic
- VBSを使用してXMLファイルの不要行を削除を行いたい
お世話になります。 表題の件先に進まず困っておりお力を貸して頂けますでしょうか。 OSより出力されたXMLファイルに不要箇所があり、 その不要箇所をVBSを使用して削除し成形し直す事を行っております。 XMLファイルをVBSでテキストと読み取り不要箇所を検索し削除と思ったのですが、思うようにいきません。 該当箇所の先頭からの文字数を検索し、その前後を抜き出して 成形しなおそうとしたのですが、検索が出来ませんでした。 【検索VBS】 Const ForReading = 1 startxml = "<Parameters>" Set objFSO = CreateObject("Scripting.FileSystemObject") Set objFile = objFSO.OpenTextFile("Test01.xml", ForReading) Wscript.Echo InStr(strCharacters,startxml) 【読み込みファイル】 添付します 【結果】 0 【不要箇所】 <Parameters>から</Parameters>までです。 よろしくお願いします。
- 締切済み
- その他(プログラミング・開発)
- csvファイルを読み込む方法について
aspにてscvファイルを読み込む際、直接ファイル名を指定するとうまくいくのですが、ファイル名を変数で指定しようとすると、「ファイルが見つかりません」というエラーになってしまいます。どのように記述すれば良いでしょうか。お教えください。よろしくお願いいたします。 (例) 'OK Set objFS = CreateObject("Scripting.FileSystemObject") Set objText = objFS.OpenTextFile(Server.MapPath("aaa.csv"),1) 'NG fname = "aaa.csv" Set objFS = CreateObject("Scripting.FileSystemObject") Set objText = objFS.OpenTextFile(Server.MapPath(fname),1) また、 Set objText = objFS.OpenTextFile(Server.MapPath("""" & fname & """"),1) としてもダメでした。以上です。
- ベストアンサー
- Microsoft ASP
- DOSコマンドでVBSで取得した値をセットしたい
DOSコマンドで VBSで取得した値をセットしたい サーバ上のあるフォルダにファイルが蓄積されています。 2011_07_01.csv 2011_07_02.csv 2011_07_05.csv 2011_08_05.csv 今月(8月)になった時点で、先月分(07月)で且つ_01.csv と_05.csvファイル を削除するコマンドを作ろうとしています。 先月を取得する部分をVBSにし、その値をセットしようとしましたが、セット方法が分かりません。 echo WScript.Echo Right("0" & Month(DateAdd("d",-15,Date)), 2)> C:\tmptest.vbs CALL C:\tmptest.vbs とするとメッセージボックスで'07'と出力されます。 イメージですが、この'07'を変数にセットして、 (SET AAA = C:\tmptest.vbsの出力結果 のような) フォルダ内で ????_%AAA%_01.csv ,????_%AAA%_05.csv にマッチすれば削除するとしたいのですが、 (FOR /R %%A IN (????_%AAA%_01.csv,????_%AAA%_05.csv) DO DEL %%A というかんじで) VBSで取得した値をセットする方法を教えてください。
- 締切済み
- その他(プログラミング・開発)
お礼
ご回答ありがとうございます。 質問内容が分かりにくくて申し訳ございません。 自分で検索はしており、検証もしていたのですが、 お客様情報を含んでいるため、内容の詳細を記載することができず、 概要だけの内容となってしまいました。 ご指摘いただいた、ページも参照していたのですが、有効なのかどうかの 判断ができておりませんでした。 もう一度確認をしてみます。ありがとうございました。