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

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

ただいまの
回答率

90.62%

  • C#

    6839questions

    C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

  • .NET Framework

    445questions

    .NET Framework は、Microsoft Windowsのオペレーティングシステムのために開発されたソフトウェア開発環境/実行環境です。多くのプログラミング言語をサポートしています。

Visual C# 値渡し、戻り値 の初心者でもわかりやすい文法

解決済

回答 2

投稿

  • 評価
  • クリップ 2
  • VIEW 1,046

bigpieces

score 8

初心者のため、ざっくりした質問で申し訳ありません。

イベントハンドラー [button1_click] で
テキストファイル 1行ずつよみこみ
a = 読み込んだ値
if a==b 値渡し

下記の戻ってきた値をデータベースに登録



a の値を別のclass(?) で編集
a のなかから c の値を抜き出し、値を戻す。


というコードを記載したいのですが、

class? get? set? 基本も基本なのでしょうが、迷ってしまいました。
初心者でも扱いやすい文法を教えてもらえますとうれしいです。


そのあと、またいろいろな文法を勉強します。
どうかよろしくお願いします。
  • 気になる質問をクリップする

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

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

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • Tak1wa

    2015/09/30 09:07

    「if a==b 値渡し」これはどういう意味でしょうか。またbとcはどこから出てきましたか。定数でしょうか?

    キャンセル

  • bigpieces

    2015/09/30 20:57

    回答ありがとうございます。質問すら下手でゴメンなさい。 b は、固定値であります。 a の文字列から固定値○●●を含む場合、などと記述したかったです。 そして、c は先のaにある○●●から、●●だけを切り取るようにしたかったです。

    キャンセル

回答 2

checkベストアンサー

+1

こんにちは。

骨組を組んでみました。
あとは要件に応じて細かい実装をしていく必要があります。
ところどころ検索ワードっぽいものを入れてみたので
まずは調べてみてください。

private void button1_Click(object sender, EventArgs e)
{
    const string b = "b_value";
    //テキストファイル1行づつ読み込み
    foreach(string a in ReadLineFromTextFile())
    {
        if (a == b)     //if a==b 値渡し がよくわからない。比較?
        {
            //データベースに登録
            // 1行づつ登録(コミット)していいの?
            RegistToDataBase(GetEditedA(a));
        }
    }
}

private IEnumerable<string> ReadLineFromTextFile()
{
    //TODO:テキストファイル1行づつ読み込む。読み込んだ値をyield returnする。
    //→StreamReader系
    yield return string.Empty;
}

//a の値を別のclassで編集
// →とりあえずclassでなくても良いです
private string GetEditedA(string a)
{
    //TODO:aのなかからcの値を抜き出し、値を戻す。
    //→抜き出す?除去するということかな?「a.Replace(c, string.Empty)」とか
    string editedA = string.Empty;

    return editedA;
}

private void RegistToDataBase(string afterA)
{
    const string c = "c_value";
    //TODO:データベースに登録する処理
    //→Oracle?SQLServer?MySQL?接続方式などにも依る。ODBC?ADO.NET?EntityFramework?
}

(追記)
テキストファイルなどの外部リソースを扱う場合は「リソースの破棄」についても学ぶ必要があります。

投稿

編集

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2015/09/30 21:11

    まさしく、これです。IEnumerable<string> などなかなかとりかかり難であります。この文法でトライしてみます。
    ありがとうございます。

    キャンセル

+1

DataSetを学習してみてください。
Excelのような感覚でデータを扱えます。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2015/09/30 21:15

    ありがとうございます。DataSet勉強してみます。ここもとりかかり難でしたので集中して実施してみます。

    キャンセル

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

  • ただいまの回答率 90.62%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

  • 解決済

    PHPでこんな書き方が有効になるのはなぜ?

    こんな書き方見たことありません! $foo->bar[]->baz = 'foobarbaz1'; $foo->bar[]->baz = 'foobarbaz2'; $foo->

  • 解決済

    【Sass + Compass】セレクタの省略について

    実際のコーディングでは、下記の例だと#headerとは別にパーツごと(.headerLink以下など)で記述していますが、ふとこういう書き方ってできるのかな?と疑問がわきまして。

  • 解決済

    インスタンス化したときのパラメーターの受け渡しについて

    いつも大変お世話になっております。 Backbone.jsの勉強中ですがインスタンス化したときにパラメーターを渡したのですが、違う場所で読み取れるようにしたいです。     Ma

  • 解決済

    ナップサック問題 アルゴリズム

    現在javaを用いて再帰の学習をしています。 再帰がよくわかりません。 具体例として ナップサック問題を解く再帰的なアルゴリズムを教えてください。

  • 受付中

    Androidアプリ開発でsetTextの使い方

    閲覧ありがとうございます。 タブの文字列を変更したいのですが変更できず困っています。 Settingという表記のタブの名前を「その他」に変えたいです。 方法としては 1.Pag

  • 解決済

    Jqueryで横幅の伸び縮みをしたい

    サイトを作っているのですが、 $(function() {     var cnt = 0;     if (cnt % 2 == 0) {         $('#introdu

  • 受付中

    【Android】SoundPoolについて

    はじめに、SoundPoolにいくつかの音声を読み込み、その後それらをint[] SoundIDなどでそれぞれのSoundIDを管理して ボタン処理などの人的動作をせずに、ランダ

  • 解決済

    別クラスから変数を受け取りたい (再)

    プログラムを書き換え再度投稿させて頂きました。 内容としましては、textbox1・2に数値を打ち込み、save_btを押すと、2つの値の合計がファイルに落とされるものとしました。

同じタグがついた質問を見る

  • C#

    6839questions

    C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

  • .NET Framework

    445questions

    .NET Framework は、Microsoft Windowsのオペレーティングシステムのために開発されたソフトウェア開発環境/実行環境です。多くのプログラミング言語をサポートしています。