G3512_And_note_パラメーター登録
2025年2月9日
13:51
G3512_andoroid_and_note_param_registration
説明
パラメーター取得関数を作ります
途中で設計方針が変更され、この修正は不要になります
// パラメーター取得関数
private string Get_param_data(string prm_name)
{
string fil_path = Path_files + @"/000_パラメータ.txt";
string txt_buf;
string[] cut_tbl = new string[10];
txt_buf = Txt_fil_name_sarch(fil_path, prm_name.Trim());
if (txt_buf == "") return ("");
cut_tbl = txt_buf.Split(',');
if (cut_tbl.Length < 2) return "";
return cut_tbl[1]; // 2個目の要素がデータです
}
テキストファイル検索の共用関数を作ります
途中で設計方針が変更され、この修正は不要になります
途中で設計方針が変更され、この修正は不要になります
// テキストファイル検索
private string Txt_fil_name_sarch(string prm_fil_path, string prm_name)
{
string txt_buf = "";
string[] cut_tbl = new string[20];
bool find_flg = false;
// テキストファイル読み込み
System.Text.Encoding.GetEncoding("utf-8");
using (StreamReader red = new StreamReader(prm_fil_path))
{
while (red.EndOfStream == false)
{
txt_buf = red.ReadLine();
if (txt_buf == null) continue;
if (txt_buf == "") continue;
cut_tbl = txt_buf.Split(',');
if (cut_tbl.Length < 2) continue;
if (cut_tbl[0].Trim() == prm_name.Trim())
{
find_flg = true;
break;
}
}
}
if (find_flg == false) txt_buf = "";
return txt_buf;
}
英単語検索関数を修正します
途中で設計方針が変更され、この修正は不要になります
途中で設計方針が変更され、この修正は不要になります
// 英単語テキストファイルを検索して結果を表示します
private void Japan_to_english(string prm_japan)
{
string fil_path = Path_files + @"/000_英単語.txt";
string txt_buf;
string[] cut_tbl = new string[10];
if (prm_japan.Trim() == "") return;
if (File.Exists(fil_path) == false)
{
msg2("英単語ファイルが存在しません", fil_path, "");
return;
}
txt_buf = Txt_fil_name_sarch(fil_path, prm_japan);
if(txt_buf != "")
{
// 発見しました
cut_tbl = txt_buf.Split(',');
if (2 <= cut_tbl.Length)
Edt_tbl[0].Text = cut_tbl[0] + " " + cut_tbl[1];
}
else
{
Edt_tbl[0].Text = "---未登録です---";
// 未登録ワードのキーだけを追加しておきます
// 内容はパソコンで登録するものとします
Txt_fil_rec_add(fil_path, prm_japan.Trim() + ",");
}
}
コマンドを追加します
ボタン4を押したときの処理を追加します
ボタン2を押したときの処理「コマンド(実行)」を作ります
case "パラメータ登録":
tmp_cst = Edt_tbl[0].Text;
// パラメータ名 データ数値
// (検索日数 31)
Param_data_update(tmp_cst);
break;
方針変更します
グローバル変数を追加します
public static string Path_param = "";
Path_param = Path_files + @"/param";
if (System.IO.Directory.Exists(Path_param) == false) Directory.CreateDirectory(Path_param);
パラメータ取得関数の作り直し
// パラメータ取得関数
private string Get_param_data(string prm_name)
{
string fil_path = Path_param + @"/" + prm_name + ".txt";
string[] fld_tbl = new string[10];
if (File.Exists(fil_path) == false)
{
msg2("パラメーターファイルが存在しません", fil_path, "");
return "";
}
com_txt_tbl_red(fil_path, 0, fld_tbl);
return fld_tbl[0]; // 1個目の要素がデータです
}
パラメータ登録関数の作成
// パラメータデータ登録
private void Param_data_update(string prm_data)
{
string[] fld_tbl = new string[30];
string fil_path;
string txt_buf;
fld_tbl = prm_data.Split(' ',' '); // 必ず2個以上要素があります
if(fld_tbl.Length < 2)
{
Edt_tbl[0].Text = "--- 書式が不正です 名称とデータを空白で区切ってください ---";
return;
}
fil_path = Path_param + @"/" + fld_tbl[0].Trim() + ".txt";
// ファイルが存在する場合削除します
if (File.Exists(fil_path) == true) File.Delete(fil_path);
txt_buf = fld_tbl[1].Trim();
Txt_fil_rec_add(fil_path, txt_buf); // テキストファイルに1行追加します
}
動作確認
フリックで修正します
あとで、コマンド名を修正しておきます
パラメーター名の間にスペースがあるのでフリックで編集します
スマホのデータをパソコンにバックアップし、ファイルの確認をします
コマンド名を修正します
パラメーター名がスペースで分断されている場合メッセージを追加します
if(2 < fld_tbl.Length)
{
Edt_tbl[0].Text = "--- 書式不正です 名称が空白で区切られている場合は修正してください ---";
return;
}