C#

C#で行を入れ替える

C#

個人的なメモです string[] _kugiri = { "\r\n" }; string[] dm_list = { "グルコース", "HbA1c(JDS)", "HbA1c(NGSP)", "グリコアルブミン" }; string[] shishitu_list = { "総コレステロール", "中性脂肪", "HDL-コレステロール", "LDLコレステロール", "計算LDL" }; string[] tp_u_list = …

C#でOCRを作ってみる

C#

環境 準備 tesseractの導入 コード 工夫した点 苦労した点 環境 Windows10 Pro 64bit Visual Studio Community 2017 準備 こちらから「tesseract-ocr-3.02.eng.tar.gz」をダウンロードして解凍する 実行ファイルと同じフォルダに入れる tesseractの導入 Visu…

C#個人的メモ(2)

C#

マウスの移動だけでテキストボックスに文字を入力する public partial class Form1 : Form { public Form1() { InitializeComponent(); } int in_posi; int out_posi; private void label1_MouseLeave(object sender, EventArgs e) { out_posi = Cursor.Posi…

C#個人的メモ(1)

C#

数字を入力したら自動的に次のテキストボックスにフォーカスを移す 数字の表示する際に、数字の前にプラスマイナスの符号をつける private void textBox1_TextChanged(object sender, EventArgs e) { if(Regex.IsMatch(textBox1.Text, @"\d+[.]\d{1}")) { te…

子供のためにメモリーゲームを作る

C#

苦労した点 メインフォームの移動、サイズ変更を禁止する Main Form FormBorderStyle:None Start Position:CenterScreen PictureBox Dock:top Size:(-),32 Label Font:14pt, bold アニメーション 画像を順番に切り替えることで解決 背景が透明なpng画像…

カードをめくるアニメーションを作る

回転している画像を作成する from PIL import Image import numpy as np import cv2 img = cv2.imread('sss10.jpg') pts0 = np.float32([[256,256],[256,0],[0,0],[0,256]]) pts1 = np.float32([[192,236],[192,20],[64,0],[64,256]]) pts2 = np.float32(([1…

数独の正解図をランダムに作る

C#

1つの数字に着目して、3×3のブロックごとに配置できる可能性を考えていくと 9*6*3*6*4*2*3*2*1 = 46656通りある。 まずは事前にそれをすべて書き出すことにする。 (過去にやったのでそのまま流用) touch-sp.hatenablog.com 036147258 036147285 036147528 …

将棋盤を作ってみる

C#

先手、後手とも駒台は9枚まで 表示するだけで駒は動かせない using System; using System.Drawing; using System.IO; using System.Text; using System.Text.RegularExpressions; using System.Windows.Forms; namespace shogiban { public partial class Fo…

文字列から特定の行を削除する

C#

数字から始まる行のみを抽出 if (Clipboard.ContainsText()) { string[] _kugiri = { "\r\n" }; List<string> lines = new List<string>(); lines = Clipboard.GetText().Split(_kugiri, StringSplitOptions.RemoveEmptyEntries).ToList(); lines.RemoveAll(s => !Regex.IsMa</string></string>…

トピックモデルを使った文献スクリーニング (3)

touch-sp.hatenablog.com 上記をやや修正した Perlを使って表記ゆれ対策 下準備 Rのtext2vecパッケージを使う 結果 Perlを使って表記ゆれ対策 Rの「tm」パッケージ「stemDocument」はうまくいかないので頻出単語を調べたうえで自力で。 変換する単語数を増や…

トピックモデルを使った文献スクリーニング (2)

データのダウンロード Linuxコマンドでmd5チェックと解凍 C#を使ってアブストラクトを抽出 Perlを使って表記ゆれ対策 Rのtext2vecパッケージを使う 結果 データのダウンロード ダウンロードはこちらから。 Linuxコマンドでmd5チェックと解凍 md5sum -c pubme…

PubMedからダウンロードしたXMLファイルの操作方法 (巨大な場合)

検索結果のダウンロード PubMedから検索結果をXMLフォーマットでダウンロード。 検索結果をダウンロードするには、検索結果ページの右上にある「Send to」をクリック、「File」を選択し、Formatを「XML」にして「Create File」をクリック。 「pubmed_result.…

Journalのタイトルをリストアップする

C#

using System.Text; using System.IO; namespace html { class Program { static void Main(string[] args) { StreamWriter writer = new StreamWriter("article.html", true, Encoding.UTF8); writer.WriteLine("<ol>"); for (int volume = 1; volume < 6; volu</ol>…

Journalのタイトルを一括ダウンロード

C#

namespace download { class Program { static void Main(string[] args) { for (int volume = 1; volume < 6; volume++) { for (int issue = 1; issue < 3; issue++) { for (int page = 1; page < 3; page++) { string url = "http://link.springer.com/jou…

英語学習のためのアプリを作る

C#

MainWindow.xaml <Window x:Class="WpfApplication1.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title="英語問題" Height="350" Width="816" Initialized="Window_Initialized"> <Grid> </grid></window>

数独を解く(別解:バックトラック法)

C#

Form1.cs using System; using System.Linq; using System.Windows.Forms; namespace 数独バックトラック法 { public partial class Form1 : Form { Button[] IDbutton = new Button[81]; Button kensyo = new Button(); Button zikko = new Button(); Butto…

数独を解く(6日目)

C#

実行ボタンのClickイベントハンドラを記述する。 private void zikko_Click(object sender, EventArgs e) { Stopwatch sw = new Stopwatch(); sw.Start(); //////////////////////////////////////////////////////////////////////////////////////////////…

数独を解く(5日目)

C#

新規ボタンのClickイベントハンドラを記述する。 private void newGame_Click(object sender, EventArgs e) { foreach (Button a in IDbutton) { a.Text = ""; a.Enabled = true; } kensyo.Enabled = true; zikko.Enabled = false; }

数独を解く(4日目)

C#

検証ボタンのClickイベントハンドラを記述。 private void kensyo_Click(object sender, EventArgs e) { //数字の拾い出し int d; for (int i = 0; i < 81; i++) { int.TryParse(IDbutton[i].Text, out d); kazu[i] = d; } //検証を実行 if (kensyo_do()) { …

数独を解く(3日目)

C#

以下のプログラムをコンソールアプリケーションとして実行する。 「resource.txt」というファイルが作られる。 出来たファイルをおおもとのプログラムにリソースとして取り込む。 using System.Collections.Generic; namespace 下準備 { class Program { sta…

数独を解く(2日目)

C#

ユーザーフォームを追加する (input.cs) Loadのイベントハンドラを作成する必要あり。 using System; using System.Drawing; using System.Windows.Forms; namespace 数独をとく { public partial class input : Form { Button[] button = new Button[9]; pu…

数独を解く(1日目)

C#

まずはGUIまわりから(GUI.cs) メインフォーム(Form1)のLoadのイベントハンドラーを作成する必要あり。 using System; using System.Drawing; using System.Windows.Forms; namespace 数独ソルバー { public partial class Form1 : Form { private void Form1…

例外処理

C#

try { } catch(Exception ex) { MessageBox.Show(ex.Message, Application.ProductName , MessageBoxButtons.OK, MessageBoxIcon.Error); }

フォームを閉じるときの終了確認

C#

private void MainForm_FormClosing(object sender, FormClosingEventArgs e) { DialogResult reply; reply = MessageBox.Show("このアプリケーションを終了します" , Application.ProductName, MessageBoxButtons.OKCancel , MessageBoxIcon.Information); …

英語が苦手な人のためのブラウザを作る

C#

英語嫌いの自分のためにPubMedのためのブラウザを作ってみた。新規プロジェクトを作成 Form1のプロパティを変更 Form1のTextを「My Browser」に変更 Form1にSplitContainerを追加 FixedPanelはPanel1に変更 IsSplitterFixedはtrueに変更 orientationはHorizo…