c#でTestIOツールのアプリを作っています。
アプリを終了する際にsetSettingでチェックボックスでチェックした箇所とIPアドレスを保存し、次回のアプリ起動時にgetSettingで前回と同じ内容を表示させたいです。
発生している問題・エラーメッセージ
ソリューションエクスプローラー > Hogeのプロパティ > 設定 で保持するのではなく、IOsetting.csに保持したい内容を定義し、TestIO.csで状態を設定と読み込みを行いたいです。
該当のソースコード
c#
1IOsetting.cs 2 3using System; 4using System.Collections.Generic; 5using System.Linq; 6using System.Text; 7using System.Threading.Tasks; 8 9namespace Test_IOtool 10{ 11 public class IOSetting 12 { 13 14 public static bool hasNormalOutput; 15 16 public static bool hasMaintenanceOutput; 17 18 public static bool hasRunStop; 19 20 public static bool hasRangeOutput; 21 22 public static bool hasDeviationDetection; 23 24 public static bool chkConnect; 25 26 public static string IPadress; 27 28 } 29}
c#
1TestIO.cs(途中省略) 2 3 4 //チェックボックスの状態を設定する 5 public void setSetting(IOSetting testIOSetting) 6 { 7 IOSetting.hasNormalOutput = true; 8 IOSetting.hasMaintenanceOutput = true; 9 IOSetting.hasRunStop = true; 10 IOSetting.hasRangeOutput = true; 11 IOSetting.hasDeviationDetection = true; 12 IOSetting.chkConnect = true; 13 IOSetting.IPadress = ""; 14 15 } 16 17 //チェックボックスの状態を読み取る(参照渡し) 18 public void getSetting(ref IOSetting testIOSetting) 19 { 20 //StreamReaderクラスのインスタンスを作成 21 //デスクトップにあるtest_io_tool.txtを読み込む 22 System.IO.StreamReader sr = (new System.IO.StreamReader(@"C:\Users\Desktop\test_io_tool.txt", Encoding.Default)); 23 24 //ファイルの最後まで読み込む 25 string stBuffer = sr.ReadToEnd(); 26 27 //srをクローズ 28 sr.Close(); 29 30 return; 31 }
試したこと
読み込みの際に参照渡しでやるとよいとアドバイスをいただいたのですが、いまいちよくわかりません。また、setSettingに記述している内容もこれでよいのかが分かりません。どのようにコードを書けばよろしいでしょうか。
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/09/21 07:14
2018/09/21 07:36
退会済みユーザー
2018/09/21 07:39