初心者なんですが、フォルダの中の文章を表示させるプログラムってVBでできるんでしょうか?参考書を見ても難しかったり、どこを見ればいいかとかがわかりません。どういう風にプログラムを作ればいいかわかる方少しでもいいんで願いします。

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

A 回答 (4件)

サンプルです。



必要なもの
フォーム1[Form1]
TextBox[Text1]
DriveListBox[Drive1]
DirListBox[Dir1]
FileListBox[File1]
それぞれツールボックスから選択して貼り付けてください。
テキストボックス[Text1]は、この時プロパティの調整が必要です。
MultiLine = True
ScrollBar = 0-なし 以外だったら何でもいいです

処理内容
1.フォームロード時にテキストボックスを初期化
2.ドライブリストボックス/ディレクトリリストボックスのチェンジイベントで、フォルダを指定
3.ファイルリストボックスのダブルクリックで、そのファイルのテキスト内容を表示



Option Explicit

'フォルダリストのパスが変更されたとき、ファイルリストのパスも変更
Private Sub Dir1_Change()
  File1.Path = Dir1.Path
End Sub

'ドライブリストのパスが変更されたとき、フォルダリストのパスも変更
Private Sub Drive1_Change()
  Dir1.Path = Drive1.Drive
End Sub

'ファイルリストボックスをダブルクリックで、ファイル内容を表示
Private Sub File1_DblClick()
  Dim wkPath As String
  Dim wkFile As String
  Dim wkFileFullPath As String
  
  'パスを取得
  wkPath = File1.Path
  wkPath = IIf(Right(wkPath, 1) = "\", wkPath, wkPath & "\")
  
  'ファイル名を取得
  wkFile = File1.List(File1.ListIndex)
  
  'ファイルフルパスを取得
  wkFileFullPath = wkPath & wkFile
  
  'ファイルの中身を取得
  Text1.Text = getText(wkFileFullPath)
End Sub

'フォームロード時に初期化
Private Sub Form_Load()
  Text1.Text = ""
End Sub

'指定のファイル内の文字列を取得する関数
Private Function getText(inFilePath As String) As String
  Dim lngFile   As Long   'ファイルナンバ
  Dim lngFileSize As Long

  'ファイルサイズを取得
  lngFileSize = FileLen(inFilePath)
 
  '読み込みバッファの領域確保
  ReDim fileBuf(lngFileSize - 1) As Byte
 
  'バッファを取得
  lngFile = FreeFile
  Open inFilePath For Binary As #lngFile
    Get #lngFile, , fileBuf
  Close #lngFile
  
  '取得した文字列を返す
  getText = StrConv(fileBuf, vbUnicode)
End Function
    • good
    • 0

可能ですよ。

フローとしては、

1.ユーザから検索するフォルダのパスを入力させる。
2.入力されたパスの配下にあるファイル名一欄を取得し、
 ファイルが1つ以上存在するならば一欄を表示する。
3.ファイル名一欄の中からユーザに表示させたいファイル名を選択させる。
4.選択されたファイルを開き内容を取得し表示する。

が簡単なフローですね。(エラー処理は除く)
どうでしょうか?
    • good
    • 0

フォルダ内の文章とは、


1.あるフォルダにある文章ファイル(*.txt)の内容を表示したい?
2.それともあるフォルダにある文章ファイルの一覧を表示したい?
3.さらに表示はVBで作ったAP上に表示したい?
4.又はメモ帳等で表示させたい?

以上全てはVBで実現できますよ。
欲しい機能はどれでしょうか?コーディングする前に機能を明確にする方が大事ですよ。
⇒業界ではこれを「機能仕様」なんて呼んだりもします。
    • good
    • 0
この回答へのお礼

すいません。フォルダ内の文章とはメモ帳に書いた文章のことで、メモ帳をフォルダに入れていたのでそう書いてしまいました。メモ帳の名前をtest.txtとしたんですけど、これをつかってVBでtest.txt内の文章を表示させることはできますか?

お礼日時:2001/11/08 13:28

「フォルダの中の文章」とは、フォルダ内のファイルを表示すると言うことでしょうか?


windowsのエクスプローラのように。
    • good
    • 0
この回答へのお礼

 お早い返事ありがとうございました。フォルダ内の文章とはメモ帳で書いた文章のことです。メモ帳の名前を使ってその内容を表示できるプログラムを作りたいと思っています。

お礼日時:2001/11/08 13:31

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

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

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

QVB2005での簡単なプログラム作成

画像ファイルばかり入っているフォルダがあります。そのファイルを
ボタンコントロールを押してピクチャーボックス上に表示したいと思います。ボタンコントロールを押すたびに表示されているファイルは変わっていくものとします。表示されるファイルの順番はどうでもよいのですが 最終的には全てのファイルが表示されるようにしたいのですが
どのようにしたら良いのでしょうか?

Aベストアンサー

System.IO.Directory.GetFiles(path)
を使って最初にそのディレクトリのファイル一覧を取得して、ファイル名を配列に保存しておきます。それで、ボタンを押すごとに配列を最初から動かしていき、そのファイルをピクチャーボックスに表示していけばよいのではないでしょうか。

QVB6 と VB.NET について

私は3年程前に VB6.0 にて開発を行っていたのですが、家庭の事情で開発から退きました。
しかし、3年ぶりに開発に復帰することができ、今自己学習といったかたちで VB.NET を勉強しようとしているのですが…

VB.NET を勉強するにあたって 何をインストールすればよいのかわかりません… 
Visual Studio 2005 や 2008 は VB.NET としてWEB系のシステムとしてコーディングできるものなのですか?それとも 従来の VB6.0 のようなスタンドアローン的なシステムとしてコーディングできるものなのですか?
それとも全く別のものなのでしょうか?

Aベストアンサー

>開発にて、開発言語が VB という開発と .NET という開発の案件があるのですが、こちらはどのような違いがあるのですか?

>VB…VB6.0以前
>.NET…VS2002以降
>という考え方は間違っていますか?

おそらく上記で正しいですが、「.NET」と書いた時には、.NET Framework 対応言語で開発するというニュアンスになるように思いますので、代表的なものは C#.NET, VB.NET 、つまり C# を使う可能性もあるかもしれません。念のため先方に確認してください。

QVB6のLSETをVB2005で実現するには?

VB6の下記ソースをVB2005のアップグレードツールで変換したらエラーになってしまいました。VB2005ではサポートされてないみたいで、どのように変更したらよいか途方にくれております。
どなたかご教授下さい。よろしくお願い致します。


--ソース抜粋--

A:構造体変数
B:構造体変数

VB6:
LSET A = B

VB2005:
?????

Aベストアンサー

単一命令での置き換えは出来ないようです
双方の構造体のメンバーを個別に代入するといった具合に変更しないといけないようです

Structure typeA
 Dim num as Integer
 Dim name as String
End Type

Structure typeB
 Dim num as Long
 Dim name as String
End Type
といった具合なら
Dim a as typeA, b as typeB
a.num = 3
a.name = "hoge"

b.num = CLng( a.num )
b.name = a.name
といった具合でしょう

QVB6から#C or .NET VB どちらが易しい? OS or 言語

マシンが64bit対応なので VisualBasic6から #Cか .NET VBに書き換えて64bitで動作するように検討しています。

VS2005 Proは購入済みで、OSはWindowsXP x64 proか
Windows2003を検討しています。どちらがよいかわかっていないのですが、まず最初にプログラムをどちらにコンバートするか悩んでいます。

いっそC#の方が将来性があるのでしょうか?
また、.NET VBの方が書き換えが簡単でしょうか?

以前、VB6のプロジェクトファイルを開こうとしたら
なんか変換したような気かしましたが、フォームやメインが無かった?ようなへんてこなCが出来上がりました。

VBからの移行された方でどちらを選んだのか知りたいです。

Aベストアンサー

多少、混乱と誤解とがあるようです。

まず、Windows 2003という製品はありません。
おそらくはWindows 2003 Serverと間違えているのだと
思いますが、これは企業向けのサーバー用OSで開発用
ではありません。

それとVisual Studio .NET 2002 または .NET 2003の
Visual Basic .NET とVisual Studio2005 のVisual
Basic 2005 とはそれぞれ別製品です。

言語仕様も異なっている所がありますので、VB 2005を
使用しているのに、VB .NETと言って質問すると違った
解答が返ってくる場合があります。

#VS 2005 Proを購入されたという事ですが、仕事で
#使うには中途半端だし、勉強用ならExpress Edition
#が無料で入手できるので、若干微妙な選択の様な
#感じがしますが...

また、Visual Studioは32ビットアプリケーションです
から64ビットOS上で動かしても、32ビット互換モード
で動作するのみで、64ビットで動くわけではありません。

ここから本題
VB6からの移植であるなら、やはりVB 2005の方が言語的
にも近いので移植も楽なはずです。

C#は一見、C言語の様に見えますが、全く違う言語です
から移植及び移植後の追加修正を行う際に苦労する事
になると思います。

C#の将来性については、今までのMSの言語の発売傾向
からすると、1~3年ぐらいでマイナーチェンジを出し
5~6年ぐらいで、新技術の成果といって新しい言語を
出すという事を繰り返しているので、C#に関しても
同じ事が行われる事も考えられますが、逆に長く続く
という可能性もあります。

どちらになるかは、売上げ実績次第?

多少、混乱と誤解とがあるようです。

まず、Windows 2003という製品はありません。
おそらくはWindows 2003 Serverと間違えているのだと
思いますが、これは企業向けのサーバー用OSで開発用
ではありません。

それとVisual Studio .NET 2002 または .NET 2003の
Visual Basic .NET とVisual Studio2005 のVisual
Basic 2005 とはそれぞれ別製品です。

言語仕様も異なっている所がありますので、VB 2005を
使用しているのに、VB .NETと言って質問すると違った
解答が返ってくる場合があります。

...続きを読む

Qプログラム作成ソフトは何をダウンロ-ドすれば良いのですか

最近プログラム作成に興味を持ち、それようのアプリケ-ションソフトを入手しょうと思いVisual Basic6.0をダウンロ-ドしようとしたら(1)必要最低限VB6.0ランタイム(2)VB6.0service Pack5 Runtime set(3)Visual Basic6.0 SP5ランタイムライブラリ-の3つのソフトがありましたが、どれをダウンロ-ドしたらいいのでしょうか教えて下さい。

Aベストアンサー

VB5でしたら、フリー版がありますよ。

http://www2s.biglobe.ne.jp/~yasuda_/japan/vb/#vb5cce

とかで情報が得られます。
製品版と比べると色んな面で劣りますが、使い物にはなります。

他には、DelPhi6 もフリーです。本格的なアプリを造るなら、こっちの方が向いているかも。

http://www.vector.co.jp/soft/win95/prog/se205882.html

VBについてもDelphiについても、市販の入門本が多数販売されていますので、熟読した後に取り組まれることをお勧めします。


人気Q&Aランキング

おすすめ情報