質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.49%
VB

VB(ビジュアルベーシック)はマイクロソフトによってつくられたオブジェクト指向プログラミング言語のひとつで、同社のQuickBASICが拡張されたものです。VB6の進化版といわれています。

Q&A

1回答

322閲覧

ファイルを読み込み処理をして復帰値を返したい。

Asoko

総合スコア6

VB

VB(ビジュアルベーシック)はマイクロソフトによってつくられたオブジェクト指向プログラミング言語のひとつで、同社のQuickBASICが拡張されたものです。VB6の進化版といわれています。

0グッド

0クリップ

投稿2018/04/30 00:49

編集2018/04/30 03:05

前提・実現したいこと

処理を開始して、ファイル選択ダイアログを開き、ファイルの読み込み処理をする(引数1ファイル名、引数2ファイル内容)返り値n(読み込んだ行数、-1読み込みできない、-2 99999行を超えている)
復帰値が-1の場合、エラーメッセージを返す。
復帰値が-2の場合、エラーメッセージ2を返す。
そのどちらでもない場合、リストビューにそれぞれパスとデータを表示する。
ファイルを開くときは、ストリームリーダーを使う。

ストリームリーダーを使いダイアログからファイルを選択するやり方。
復帰値の返し方。
を教えてもらえないでしょうか。
現在はここまでしか作れていないのですが、解説してくださる方いますでしょうか?
よろしくお願いいたします。

発生している問題・エラーメッセージ

エラーメッセージ

該当のソースコード

VB

1''' <summary> 2 ''' 比較元読み込みボタン押下時処理 3 ''' </summary> 4 ''' <param name="sender"></param> 5 ''' <param name="e"></param> 6 Private Sub Cmp_ori_read_Click(sender As Object, e As EventArgs) Handles Cmp_ori_read.Click 7 'ファイルを開くダイアログボックスを表示する 8 'OpenFileDialog クラスの新規インスタンスを生成 9 Dim openFileDialog1 As New OpenFileDialog 10 With openFileDialog1 11 '起動ディレクトリを設定 12 .InitialDirectory = "c:\" 13 '[ファイルの種類] ボックスに表示される選択肢を設定する 14 .Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*" 15 '最初に表示するフィルター処理オプションを設定する 16 .FilterIndex = 1 17 'ダイアログ ボックスを閉じる前に、現在のディレクトリを復元する 18 .RestoreDirectory = True 19 20 'ダイアログ ボックスを表示 [開く]ボタンが押されたら 21 If openFileDialog1.ShowDialog() = DialogResult.OK Then 22 ''選択したファイルのパスを取得 23 MessageBox.Show(openFileDialog1.FileName & " を選択しました。") 24 End If 25 End With 26 End Sub 27 28 Function File_read(ByVal sfile1 As String, ByVal sfile2 As String) As String 29 If (FileName = False) Then 30 '入力内容が異常の場合E1000を表示 31 MsgBox("ファイルが読み込めません、ほかのファイルを選択してください") 32 33 ElseIf (filename > 99999) Then 34 'ファイルが99999行を超えている場合、E1002を表示 35 MsgBox("99999行を超えています、ほかのファイルを選択してください") 36 37 End If 38 End Function 39 40End Class```ここに言語を入力 41コード

試したこと

ここに問題に対して試したことを記載してください。

補足情報(FW/ツールのバージョンなど)

ここにより詳細な情報を記載してください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kawakawa2018

2018/04/30 00:56

すみませんが、ソースコードの入力欄にソースコードを書いて見やすくしてください。
Asoko

2018/04/30 01:36

修正いたしましたので、よろしくお願いいたします。
kawakawa2018

2018/04/30 02:33

前と同じです。インテンド(字下げ)ができていないので、編集がうまくいっていないようですね。ソースを貼り付けたらコードの挿入ボタン <code>を押してください。
Asoko

2018/04/30 03:06

再度修正いたしましたので、よろしくお願いいたします。
guest

回答1

0

テキストファイルを簡単に読み込むのは、
System.IO.File.ReadAllLines
関数が便利です
行ごとのstringの配列で帰ってくれるので、行数(配列のサイズ)で判断してお好きにどうぞ。

投稿2018/04/30 04:54

y_waiwai

総合スコア87747

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.49%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問