teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

1

Shift-JIS文字列の読み込み箇所について追記しました

2021/01/12 13:15

投稿

JpTomari
JpTomari

スコア4

title CHANGED
File without changes
body CHANGED
@@ -50,4 +50,55 @@
50
50
  一旦NSData変数へ変換して…ということもやろうとしたのですが、良いC#ソースのサンプルが見つからず困っております。
51
51
 
52
52
  何かいい手段はございませんでしょうか?
53
- 以上、どうぞよろしくお願いいたします。
53
+ 以上、どうぞよろしくお願いいたします。
54
+
55
+ ### 追記
56
+ 文字列の生成について追記いたします。
57
+
58
+ ``` C#
59
+ int idx = 0;
60
+ String line;
61
+
62
+ // StreamReaderを開く
63
+ // ※外部リソースファイルからの読み込み
64
+ StreamReader reader = new StreamReader("bin_data/stage_data/stage_title");
65
+
66
+ try
67
+ {
68
+ // 文字列保存テーブルの生成
69
+ mStageTitle = new string[100];
70
+
71
+ // 読み込みループ
72
+ // ※最低でも1ラインは存在する
73
+ do
74
+ {
75
+ // 1ライン読み込み
76
+ line = reader.ReadLine();
77
+
78
+ // 文章が存在しないならば終了
79
+ if (line == null) break;
80
+
81
+ // 空白行なら読み飛ばす
82
+ if (line.Length == 0) continue;
83
+
84
+ // 文字列をテーブルに保存
85
+ mStageTitle[idx++] = line;
86
+ }
87
+ while (true);
88
+
89
+ // StreamReaderを閉じる
90
+ reader.Close();
91
+ }
92
+ catch (Exception e)
93
+ {
94
+ // catch節は省略
95
+ }
96
+
97
+ ```
98
+ 以上の処理で、外部ファイルから複数行の文字列を取得します。
99
+ 先の出力処理におけるString変数"str"は、このmStageTitleテーブルから取得される1行の文字列となります。
100
+ (テーブルの添え字を使って、直接持ってくるだけです。)
101
+
102
+ 外部ファイルはShift-JISによるテキストファイルとなり、その変更は互換性の関係から不可とされています。
103
+
104
+ 以上、他に何か不足などございましたら、ご指摘お願いいたします。