C#初心者です。お願いします。
環境Windows11
VisualStudio2019
フォームアプリケーション(.NetFramework)
で作成しています。
1 フォーム起動後テキストボックス1に入力値を入力
2 テキストボックスの内容をバイト配列に格納
3 ボタン2で行列演算
4 テキストボックス2に表示したいと思ってます。
現在試行錯誤中ですがよくわかっていませんのでよろしくお願いします。
入力値0011223344556677
private void button1_Click(object sender, EventArgs e)
{
2文字ずつ取ってきて配列にいれるのがわかりません
}
private void button2_Click(object sender, EventArgs e)
{
//行列計算
使用行列関数(AES-Mix)
private byte[,] MixColumns(byte[,] s)
{
for (var c = 0; c < _Ws; c++)
{
var a = new byte[_Ws];
var b = new byte[_Ws];
for (var i = 0; i < _Ws; i++)
{
a[i] = s[i,c];
b[i] = (byte)(s[i,c] & 0x80) != 0 ? (byte)((s[i,c] << 1) ^ 0x011b) : (byte)(s[i,c] << 1);
}
// a[n] ^ b[n] is a•{03} in GF(2^8)
s[0,c] = (byte) (b[0] ^ a[1] ^ b[1] ^ a[2] ^ a[3]); // 2*a0 + 3*a1 + a2 + a3
s[1,c] = (byte) (a[0] ^ b[1] ^ a[2] ^ b[2] ^ a[3]); // a0 * 2*a1 + 3*a2 + a3
s[2,c] = (byte) (a[0] ^ a[1] ^ b[2] ^ a[3] ^ b[3]); // a0 + a1 + 2*a2 + 3*a3
s[3,c] = (byte) (a[0] ^ b[0] ^ a[1] ^ a[2] ^ b[3]); // 3*a0 + a1 + a2 + 2*a3
}
return s;
}
byte[] data;
data = new byte[8];
string str = "";
for (int i = 0; i < data.Length; i++)
{
str += string.Format("{0:X2}", data[i]);
}
textBox2.Text = str;
}
No.2ベストアンサー
- 回答日時:
TextBoxに想定どおりの文字列が入っていることが前提で…
https://dobon.net/vb/dotnet/string/substring.html
substring()で切り出しできます。
https://dobon.net/vb/dotnet/programing/convert.h …
Parse()で数値化できます。
for (i = 0;i < (TextBox1.TextLength / 2); i++)
{
NumArray[i] = int.Parse(TextBox1.Text.substring((i * 2), 2));
}
みたいな感じになりますかね。
回答ありがとうございます。
var NumArray = new int[256];
var NumArray2 = new int[256];
var NumArray3 = new int[256];
for (int i = 0; i < (textBox1.TextLength / 2); i++)
{
NumArray[i] = int.Parse(textBox1.Text.Substring((i * 2), 2));
}
for (int i = 0; i < (textBox1.TextLength / 2); i++)
{
NumArray2[i] = int.Parse(textBox2.Text.Substring((i * 2), 2));
}
for (int j = 0; j < 16; j++)
{
NumArray3[j] = NumArray[j] + NumArray2[j];
}
textBox3.Text = Convert.ToString(NumArray3);
このような感じでたとえば実施するとテキストボックスにSystemInt32[]と表示されてしまうのは入力値が超えているからでしょうか?
No.4
- 回答日時:
余談になってしまうのですが
正規表現の確認はさくらエディタの検索オプションに正規表現があるのでそれで確認していただけると更に楽になると思います
さくらエディタサイトは確認しました。Regexが認識しないので、何かがうまくいかないので、はじかれるので試行錯誤してやっていきます。
No.1
- 回答日時:
おはようございます
.NETはVBの方を使っていたので応用できるか分かりませんが
Regex.Matchというメソッドを使うと良いかも知れません
多分ここまで書けるなら下記の意味も分かると思います
results = Regex.Matches("0011223344556677","\w{2}")
マッチした内容が配列になる感じです
あ、でも文字数が奇数だと最後の1文字が取れないかも
それは工夫してやってみて下さい
https://atmarkit.itmedia.co.jp/ait/articles/1702 …
回答ありがとうございます。
Regex.Matchというメソッド探してみました。
同じ数値があった場合、そこから必要数値をとるということでしょうか
テキストボックスに入れる数値についてはランダㇺなので(ここでは固定値にしてました。すいません)マッチするのをいれるのとは違ってくるので今回は該当しませんが、このような方法もあるということで勉強になります。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# TCP/IP通信時のサーバーからの受信 2 2022/11/23 09:11
- その他(プログラミング・Web制作) pythonのこのエラーがわかりません 3 2022/11/16 14:54
- JavaScript EasyUIのSubGrid(jquery)におけるObjectに入れた連想配列について 1 2022/05/02 11:21
- Excel(エクセル) 【VBA】 Alt+PrintScreenにてアクティブウィンドウのスクショを貼付する方法 4 2022/12/08 20:53
- C言語・C++・C# c言語の問題です 2 2023/07/21 10:51
- Excel(エクセル) 【マクロ】スクショ印刷がうまく動かない件 5 2022/12/06 17:37
- Java javaでのプログラム(配列)について質問です. 2 2022/10/14 22:27
- C言語・C++・C# C# で、あるフォルダー内にあるすべてのテキストファイルを別のフォルダーにコピーする。 4 2022/11/21 13:23
- その他(データベース) c言語の問題です。これを踏まえてコーディングしたいのでおしえていただきたいです。 3 2023/08/03 09:27
- C言語・C++・C# C# DatagridviewにExcelシートを反映するとエラーが出る 2 2023/05/06 17:12
このQ&Aを見た人はこんなQ&Aも見ています
-
外出時に「待たせる妻」vs イライラする「待つ夫」は日本だけ?見習いたい海外事情
夫の家事参加に積極的なイメージのある海外でも、同様の事例はあるのか。結婚カウンセラーの佐竹悦子さんに伺ってみた。
-
C#のループでtextboxに値を入れる方法
C言語・C++・C#
-
visualstudio C# テキストボックスの数値を取得して計算する方法を教えてください。
Microsoft ASP
-
テキストボックスに入力された値の判定
Visual Basic(VBA)
-
-
4
【C#】textBoxの指定行のデータを削除
C言語・C++・C#
-
5
Labelコントロールに数字を代入する
C言語・C++・C#
-
6
C#にて別クラスの関数を使いたい
C言語・C++・C#
-
7
FORMが開いているかどうかの確認方法
Visual Basic(VBA)
-
8
コントロール配列と同じような扱い方
Visual Basic(VBA)
-
9
”パラメータ値を TextBox から String に変換できません
SQL Server
-
10
別のフォームで記述している関数を実行するには?C#
C言語・C++・C#
-
11
文字数に合わせて、コントロールの幅を設定する方法
Visual Basic(VBA)
-
12
C#で構造体の配列を持った構造体を使いたいのですが
C言語・C++・C#
-
13
CloseとDisposeの違い
Visual Basic(VBA)
-
14
TextBoxに文字を書いても表示されない
Visual Basic(VBA)
-
15
C#でフォームのオブジェクト名を変数名で指定
C言語・C++・C#
-
16
C#で動的配列Listの中身をListBoxに表示するには
C言語・C++・C#
-
17
テキストボックスの中身をリセット(クリア)したい
Visual Basic(VBA)
-
18
複数のtextboxの処理を一括で行えませんか?
Visual Basic(VBA)
-
19
doubleの変数にintとintの割り算の結果を代入するとき
C言語・C++・C#
-
20
C# アプリ終了時に設定を記憶し、起動時に呼び出す
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
C#テキストボックスの文字を配...
-
同じIDで定義した要素の配列を...
-
二次元配列の全要素の全要素を...
-
Javaについて質問です。 要素数...
-
JavaScriptで配列を取得したい
-
JavaScriptでの動的な多次元配...
-
javascript 配列 変数名「arra...
-
JavaScriptにおける[] とか :...
-
jQueryで文字数カウンタ(複数...
-
Perlの配列をJavaScriptに渡せ...
-
jspからjavascriptの変数引継ぎ
-
配列の1要素を代入した変数を使...
-
Boolean型配列中のTrueの有無を...
-
ActiveXobjectが作成できない
-
JavaScript window.openで開く...
-
<a>タグのテキストを取得
-
スマフォではボタンを表示させ...
-
翌月を取得するGASが分かりません
-
なぜmatchメソッドがエラーにな...
-
javascriptで、表示されている...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
同じIDで定義した要素の配列を...
-
C#テキストボックスの文字を配...
-
React hooksが値を返して配列変...
-
オブジェクトから任意のプロパ...
-
javascript 変数名の連結をしたい
-
jspからjavascriptの変数引継ぎ
-
配列の1要素を代入した変数を使...
-
JavaScriptにおける[] とか :...
-
フォーム入力値の重複チェック
-
javascriptで行を抽出したいです。
-
undefinedを表示させない方法は...
-
javascriptで2つのArrayの...
-
WSH(Jscript)でファイル一覧
-
JavaScriptでの動的な多次元配...
-
Perlの配列をJavaScriptに渡せ...
-
[JS] setAttributeで保存される...
-
JSONデータを50音順でソートしたい
-
二次元配列の全要素の全要素を...
-
javascriptを用いて作成された...
-
バナーのランダム表示(複数、...
おすすめ情報