UNIX上のテキスト・ファイルを指定された条件でセレクトして
PC側のAccessファイルに書きこみたいのですが,
VBプログラムから直接UNIX上のテキスト・ファイルを読む方法って
あるのでしょうか?
どなたか,コードの書き方などご存知でしたら教えてください。

このQ&Aに関連する最新のQ&A

A 回答 (3件)

目的にもよりますが、UNIX上にsambaをインストールしWindows Networの一部としてアクセスできるようにしておけば、あとは、UNC名で操作できます。


もしくはネットワークドライブの割り当てをすれば通常のローカルドライブと同様に取り扱えます。
    • good
    • 0
この回答へのお礼

ありがとうございました。
トライしてみます。

お礼日時:2001/10/22 09:19

私は次の2つの方法を使い分けていました。



1:UNIXサーバーにNFSソフトを導入し、ディレクトリを共有設定する。
Windowsのネットワーク共有と同様にアクセス可能になります。
直接オープンすることもできます。("\\server1\home\...")
サーバーにアクセスするPCの台数が少ないケースに好適です。
SCO社のVisionFSを使っていますが、結構使いやすいです。
UNIXにより標準を含めNFSはいろいろあるらしいので探してみてください。

2:そのつどftpでファイルをgetし、パソコンに保存してから使う。
VBでgetすることもできますが、転送が終了したことを判断するのには
テクニックまたは外部ocxが必要です。

では
    • good
    • 0
この回答へのお礼

ありがとうございました。
探してみます。

お礼日時:2001/10/22 09:17

>UNIX上のテキスト・ファイルを指定された条件でセレクト



これはネットワーク経由でテキストファイルを検索したいという意味ですか?
ネットワーク環境がどのようなものかわからないと、返答に困りますねー。

もしWINDOWSのネットワークコンピュータからそのUNIXマシンを参照できるのであれば、手順はWINDOWSの時と一緒だと思います。しかしそうでなければ、FTPソフトのような感じにしなりますね。
http://www.mitene.or.jp/~sugisita/family/papa/vb/
↑今日このアドレス書いたの2回目です。
このアドレスの[コンポーネント]の[FTPクラス]というサンプルをDLしてみてください。
McWinFTP.clsファイル内にFindFileという関数があります。
そちらを参考にしたら、FTPでのファイルの検索をできると思います。
でもこのファイルがテキストファイルのとき、どのようにしたら内部のテキストを得ることができるのかはわかりませんが、一度ローカルにファイルをDLして、そこで開いてもいいのであれば、同じMcWinFTP.clsファイル内にあるGetFileという関数でローカルに落とすことができると思います。

環境がわからないので、的を得た答えになってないかと思います。
(1)ネットワーク構成
(2)マイコンピュータからUNIXマシンを参照可能かどうか
が気になります。

参考URL:http://www.mitene.or.jp/~sugisita/family/papa/vb/
    • good
    • 0
この回答へのお礼

いろいろとアドバイスありがとうございました。
言葉が足らなくてすみません。
Sambaをトライしてみようかと思います。

お礼日時:2001/10/22 09:21

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q大量な小さなテキストファイルを共有する方法を教えてください。

 大量のファイルをネット上で、複数の人と簡単に共有する方法を教えてください。私は1000単位で、ネット上で集めた文書のテキストファイルがあります。これは、grepを使って、いろいろ検索すると意味を持つコーパスを意識してデータ収集しました。(英語の手紙です)これを人と共有するのに一楽な方法はありますでしょうか。
 一つは、それに全部リンクをつけインデックスページを作り、アップロードして、それを他人にホームページダウンロードソフトで落としてもらうことですが、当方は、集めたファイルにリンクをはってアップするのも手間がかかります。リンクをつけないでアップするとダウンロードソフトは解析しませんでした。(Website Explorer) リンクつきインデックスを作らずに共有する方法は何か考えられるでしょうか。大きさは全部で数メガ程度ですが、1つのファイルがテキストファイルで数キロバイトです。

Aベストアンサー

集めてきたファイルのインデックスページを作成するのが面倒
ということで、プログラムの知識は低いと推測しました。

実際には、"共有"でなくて、サーバから一括ダウンロードしてローカルの一つのフォルダに放り込んでから使う利用方法が一般的ではないでしょうか?
その場合なら、全部一まとめにしたZipファイルを置いておけば事足りるでしょう。
Web上で検索したいんだというなら、そのようなWebサーバを立てるかということになりますが、難易度は高め。
Wikiのサービスを利用して、そこにアップロードするような仕掛けも考えられますが・・・
正直、利用者の規模が想定出来ないので、「変に共有する必要はないんじゃないか」というのが実感です。

著作権についての指摘もありましたが、内容は許諾のあるものに限定されてますよね?まあ、コーパスを作る上でそこら辺は重々承知でしょうが・・・。

QVB6.0 でのテキストファイルの表示

.net では、readstream でがばっととって、テキストボックス(読み取り専用)に表示しました。

これと同様のことをVB6.0でチャレンジしたのですが、テキストボックスに表示されるのは最初の一行だけでした。マルチラインのテキストボックス設置後

Private sub command1_click()
Dim data as string

Open "ファイルパス" for input as #256
Do while EOF(256)
line input #256, data
loop

text1.text=data

としたところ、ファイル内の最初の一行目に位置する「%」のみが表示されました。
readonlyもつかえないみたいなので、Listを使うのがよいのでしょうか?ご教示下さい

Aベストアンサー

FileSystemObject を使いましょう。


参照設定で "Microsoft Scripting Runtime" を参照した場合は

Dim textValue As String
Dim fso As Scripting.FileSystemObject
Dim ts As Scripting.TextStream

Set fso = New Scripting.FileSystemObject
Set ts = fso.OpenTextFile("D:\test.txt", ForReading)
textValue = ts.ReadAll
ts.Close
Me.TextBox1.Text = textValue


参照設定をしない場合は

Const ForReading = 1
Dim textValue As String
Dim fso As Object
Dim ts As Object

Set fso = CreateObject("Scripting.FileSystemObject")
Set ts = fso.OpenTextFile("D:\test.txt", ForReading)
textValue = ts.ReadAll
ts.Close
Me.TextBox2.Text = textValue

です。

FileSystemObject を使いましょう。


参照設定で "Microsoft Scripting Runtime" を参照した場合は

Dim textValue As String
Dim fso As Scripting.FileSystemObject
Dim ts As Scripting.TextStream

Set fso = New Scripting.FileSystemObject
Set ts = fso.OpenTextFile("D:\test.txt", ForReading)
textValue = ts.ReadAll
ts.Close
Me.TextBox1.Text = textValue


参照設定をしない場合は

Const ForReading = 1
Dim textValue As String
Dim fso As Object
Dim ts As Object

Set...続きを読む

QPC・フォルダの共有サイトなど

パソコンのフォルダを友達のパソコンと共有できるようなフリーの管理ソフトかサイトなどを探しています。

・パスで第三者に見られないようにできる
・テキストなどをそのまま開いて更新や保存ができる
・パソコンにそのフォルダのデータを残さないでも平気

説明が下手で分かりづらいかもしれませんがこのような感じのものを探しています。
掲示板的な機能もあればなお良いです。

何かおすすめがあれば教えて頂きたいです。

よろしくお願い致します。

Aベストアンサー

情報の入手のしやすさの点で、マイクロソフトのSkyDriveをお奨めします。
●今更ながら25GオンラインストレージSkyDriveをローカルフォルダ化してみた*ホームページを作る人のネタ帳
http://e0166.blog89.fc2.com/blog-entry-724.html

______________________

◆無料オンラインストレージ一覧 - フリーソフト100
http://freesoft-100.com/web/onlinestrage.html
も使い方次第ではご質問の要望を満たすことができるでしょう。同期などを考えるとSugarSyncなどが便利です。

Qテキストファイルを後ろから読む方法(VB2008)

やりたいことを先に書くと、最終的には
Linuxのtailに毛が生えたようなアプリをつくりたいと思っています。
開発環境はVB2008 Express Editionです。


で、まずはテキストファイルを後方から読む方法でつまっています。
指定した行数を後方から読むようにしたいと思っています。

最初は全行をいったん読み込んで配列に入れて処理という
書き方をしたのですが、大きなファイルの際にメモリを大量に消費し、
処理速度も遅くなったのでボツになりました。


今はとりあえず、バイナリで後ろから読み込んで改行文字列を
自分で見つけて処理をするという原始的な方法を思い浮かべていますが、
今っぽくないプログラミングであるような気がしています。

このようなことを実現する便利なクラス・機能やエレガントな記述等を
教えていただきたいと思っています。

よろしくお願いします。

Aベストアンサー

FileStreamからバイナリデータとして読み込んで文字列の配列に読み込むといった具合でしょう

dim Buf( 1023) as Byte

FileStreamのSeekメソッドでファイルの末尾へ移動 ... 1)
Seekで読み取りバッファ分だけファイルの先頭側へ移動 ... 2)
Read(Buf, 0, Buf.Length)で読み込み
CR(&H0D)やLF(&H0A)を探しながら BufをLength-1から0へ向けて検索および文字列化 ... 3)
希望の行数未満の場合は1)へ戻って 2)を繰り返し回数分戻して繰り返す
といった具合でしょう

3)の文字列化ですが UnicodeのファイルならSystem.Text.Encoding.Unicodeで
Shift_JIS(含むANSI)などのファイルならSystem.Text.Encoding.Defaultなどで変換が必要でしょう

Q動画共有サイト(安全性)について

動画共有サイトを利用するにあたって教えてください。

1.動画共有サイト上で動画を見ている場合、自分のパソコンと第三者のパソコンと
 接続している状態になるのでしょうか?

2.動画共有サイトから動画をダウンロードする場合はどうでしょうか?
 ちなみに動画共有ダウンロードソフト DL-Video等でダウンロードした場合
 自分のパソコンと第三者のパソコンと接続している状態になるのでしょうか?

ファイル共有ソフト Winny等は第三者と接続状態になりデータの流出が問題になりましたが
動画共有サイトの場合はどうなんでしょうか?
ファイル共有ソフトでダウンロードするのと動画共有サイトからダウンロードするのとは
違うのでしょうか?

説明ベタですいませんがよろしくお願いします。

Aベストアンサー

>こういう動画ファイルにウィルスがついている場合もありますか?

可能性としてはゼロではありません。ですが、サーバー側でウイルス対策をしているのでほぼ無いと思って良いでしょう。

>たしかに著作権に関して問題になっていますが、あくまでも一個人の利用です。

著作権に関しては個人とか個人じゃないとか関係ありませんよ。一個人での利用を理由に見逃されるなら著作権なんて存在する意味がありません。

Q[VBS] テキストファイルから任意の値を抽出する

規則性のあるテキストから、1行づつ処理を行い
ある文字列の設定値を抽出したいです。

例:Bの値だけを抽出したい。(AとBの間は半角スペース)

【テキストファイルの中身】
----------------------------------------
1行目| A="あ" B="あ" A="い" B="い" A="う"
2行目| A="え" B="う" A="お" B="え" A="か"
3行目| A="き" B="お" A="く" B="か" A="け"
----------------------------------------

【出力結果】(Bの値だけ)
---------------------
1行目| あ,い
2行目| う,え
3行目| お,か
---------------------

色々方法はあると思いますが、どうしても複雑になってしまうので
簡単に出来る方法(観点)があれば、ご教示頂きたいです。

Aベストアンサー

VBS なら正規表現が標準で使えるはずですので
「行単位にパターンマッチを行い、全ての該当部分を抜き出し」
が一番簡単でしょう。

正規表現: \bB=\"(.*?)\"
http://msdn.microsoft.com/ja-jp/library/cc392020.aspx

全ての該当部分を対象
http://msdn.microsoft.com/ja-jp/library/cc392451.aspx

パターンマッチ
http://msdn.microsoft.com/ja-jp/library/cc392389.aspx

マッチ毎に繰り返し
http://msdn.microsoft.com/ja-jp/library/cc392214.aspx

該当部分(1番目の正規表現グループ)を抜き出す
http://msdn.microsoft.com/ja-jp/library/cc392216.aspx

Qファイル共有と動画共有サイトのつながり

ファイル共有ソフトは簡単に言えば自分のファイルを公開して
いくものですよね。
だから情報漏洩につながると知っています。(ウイルス等で)
しかし同じ共有でも、ようつべやニコニコなどの動画共有のサイトは、見る限り自分のファイルを公開するというのではなくて、
ただ単に動画を公開するだけで、情報漏洩にはつながらないと思うんです。
しかし、「共有」だから、ファイル共有もするのかなぁと思ったんですが、やはりあいまいです。

結局、ファイル共有ソフトと動画共有ソフトの違いは何なのでしょうか?また、動画共有サイトではファイル共有はするのでしょうか?
ニコニコをはじめたいのに、ファイル共有がだめなので、共有という言葉が引っかかります。
どうぞ、よろしくお願いします。

Aベストアンサー

共有するファイルがどこにあるか、です。
ファイル共有ソフト(P2Pソフト)・・・自分のHDD
動画共有サイト・・・サーバーのHDD
どちらにしても自分が著作権を持たないものに関しては、
著作権法違反行為に該当します。

QVB6にて、テキストファイルの内容を更新したいのですが。。

こんにちは、またも壁にぶつかりましたので教えて下さい<(_ _)>テキストファイルの中身を変更したいのですが、エラーばかりです(>_<)読み書きができるOpenの仕方ってあるのでしょうか?開いて、読み込んでって、Aをみつけたら;Aって感じで変更したいんですが、どうもできません(>_<)教えていただきたいです<(_ _)>よろしくお願いします<(_ _)>

Aベストアンサー

喜んでいただけて嬉しいのですが、小言を少し・・・
「意味不明です」なのであれば、私が張ったソースは使わない方がいいです。
何処ででもそうなのですが、教えてもらったソースや、情報が理解できないのであれば、理解するように努力して、理解できてから使うようにした方がいいです。
やろうと思えば、システムを壊す事も可能だということを頭の片隅にでも置いておいて欲しいです。
これからも何か開発をしようと思うなら大切な事だと思います。

で、理解してもらう為に以下のキーワードをヘルプなりで調べて理解してください。
そうすれば、自ずとsatoshi777さんのやりたいことのソースが出来上がって来ると思います。

===キーワード===
Open
FreeFile
Line Input
Replace
Print
Scripting.FileSystemObject
================

小うるさい事を言ってすいません。
頑張ってください。

Q動画共有サイトのAPI使用は著作権の侵害になる?

動画共有サイト(YouTUBEやVeohなど)のAPIを利用して
自分のブログやサイトに芸能人のPV等の動画を掲載した場合
著作権の侵害 パブリシティ権の侵害にあたりますでしょうか?

※自分のサイトやブログに掲載しているのは
  あくまで、動画共有サイトのAPIを利用している。
※自分自身で動画共有サイトに動画のアップロードは行っていない。

Aベストアンサー

内容にもよるでしょうね。

原則としてYouTUBEやVeohなどの動画共有サイトには違法動画は無い、と確信して
その動画を自分のページで公開することは違法ではありません。

現実にYouTUBEはそれを認めています。

しかし児童ポルノ等の明らかに違法と判明している場合は
要注意です。

実際に警察が動いたことがあります。下記記事参照
http://d.hatena.ne.jp/mkuji/20100506/1273106912

お尋ねの「芸能人の動画」の場合も
それが著作権を侵害しているかどうかは
見ている者にはわかりませんから
その行為が違法性に問われることはない、と思います。

Qテキストファイルが登録されたら指定テキストファイルに追加書き込む

テキストファイルが作成されたら別フォルダのテキストファイルに追加書き込むモジュールはありませんか

Aベストアンサー

Sub OpenTextFileTest
  Const ForReading = 1, ForWriting = 2, ForAppending = 8
  Dim fso, f
  Set fso = CreateObject("Scripting.FileSystemObject")
  Set f = fso.OpenTextFile("c:\testfile.txt", ForAppending, True)
  f.WriteLine "ただいまの時間は、 " & Format(Now, "hhmmss") &" です。"
  f.Close
End Sub

他にもあるけれども、これは汎用性です。


人気Q&Aランキング

おすすめ情報