C#

C#のint.ParseとConvert.ToInt32の違い

C#

Parse, Convertともに、数値に変換出来る文字列は “12345” や “123.45” などの正しい数値を表す文字列のみ。 文字列の前後、途中に数値以外の文字、スペースなどが入っていると例外が出る。 Parse, Convertともに、文字列の先頭に沢山の0(ゼロ)が付いてい…

C#一行でファイル出力/ファイル読み込み

C#

//第1引数:ファイルパス //第2引数:追記するテキスト File.WriteAllText(@"C:\Myfolder\test.txt", "Good morning!");//第1引数:ファイルパス string readText = File.ReadAllText(@"C:\Myfolder\test.txt"); ネタ元 https://qiita.com/t_sato310/items/6…

C#でJSONのシリアライズ/デシリアライズ

C#

Json.NETで。シリアライズ string ret = JsonConvert.SerializeObject(hoge);デシリアライズ var settings = new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore, // nullの場合はクラスのプロパティを無視する MissingMemberHandl…

C#でデバッグ用時間計測

C#

C#でStopwatchクラスを使用 // using System; // Stopwatchクラス生成 var sw = new System.Diagnostics.Stopwatch(); //----------------- // 計測開始 sw.Start(); // ★処理A // 計測停止 sw.Stop(); // 結果表示 Console.WriteLine("■処理Aにかかった時間…

C#のSQLiteでオンメモリで実行する

":memory:"で指定して ";mode=memory;cache=shared"; を付けて使う public abstract class SqliteBase { public string ConnectionString; protected SqliteBase() { SQLiteConnectionStringBuilder builder = new SQLiteConnectionStringBuilder { DataSour…

C#でyyyymmdd 形式の文字列を DateTime 型に変換する

C#

yyyymmdd 形式の文字列を DateTime に変換 var dt = System.DateTime.ParseExact("20171231", "yyyyMMdd", null);ほかにもいろんなパターンで指定可能 ネタ元 https://bayashita.com/p/entry/show/238

C#で日本時間取得

C#

DateTime utc_input = System.DateTime.UtcNow; TimeZoneInfo jstZoneInfo = System.TimeZoneInfo.FindSystemTimeZoneById("Tokyo Standard Time"); DateTime jst = System.TimeZoneInfo.ConvertTimeFromUtc(utc_input, jstZoneInfo); ネタ元 https://www.ip…

C#で難読化(無料)

C#

ConfuserExが良いDLLでもいける。 使い方 https://rabbitfoot.xyz/code-obfuscation-confuserex/ ネタ元 https://rabbitfoot.xyz/code-obfuscation/

c#で特定のexeが生きてるか調べる

c#

excel.exeいるか調べるサンプル Process[] processList = Process.GetProcesses(); foreach (Process p in processList) { try { string fileName = System.IO.Path.GetFileName(p.MainModule.FileName); if (fileName.ToLower() == "excel.exe") { bExcelQu…

C#でRTDServerを実装する方法

C#

参考 https://seraphy.hatenablog.com/entry/2018/02/09/220000 参考の元ネタ https://weblogs.asp.net/kennykerr/Rtd7 英語だがこの人の記事読めばRTDServer周りはほぼ網羅できるらしい。 追記 以下本家の記事通り「Microsoft excel 1?.0 オブジェクトライ…

C#でjsonをクラスに展開(DeserializeObject)

C#

string jsonteststring = "[{{\"code\":\"8411\",\"num\":10}}]"; var settings = new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore, MissingMemberHandling = MissingMemberHandling.Ignore }; var oTest = JsonConvert.Deseria…

C#でTickカウント取得

C#

Environment.TickCount ネタ元 https://docs.microsoft.com/ja-jp/dotnet/api/system.environment.tickcount?view=netframework-4.8

C#単語の先頭文字を大文字に変換する

C#

stinrg text = "open"; text = System.Globalization.CultureInfo.CurrentCulture.TextInfo.ToTitleCase(text); ネタ元 http://baba-s.hatenablog.com/entry/2014/05/29/213246

C#で文字列の数値変換でint.Parse()使うと数値意外の文字列で例外飛んじゃうの嫌ならint.TryParse()

C#

その場しのぎで使ってその先の処理で死なないように、気を使ってね。 ネタ元 https://www.k-karakuri.com/entry/2018/04/13/TryParse%E3%82%92%E4%BE%8B%E5%A4%96%E7%99%BA%E7%94%9F%E3%81%AE%E9%98%B2%E6%AD%A2%E3%81%AB%E4%BD%BF%E3%81%86%E3%81%AE%E3%81%…

C#でPC起動してからの経過時間を取得

C#

System.Environment.TickCount ネタ元 https://dobon.net/vb/dotnet/system/tickcount.html

C#にてIEで特定のURLになっているウインドウを根こそぎ閉じる

C#

SHDocVw.ShellWindows shell = new SHDocVw.ShellWindows(); foreach (SHDocVw.WebBrowser IE2 in shell) { if (-1 != IE2.LocationURL.IndexOf("127.0.0.1") ){ IE2.Quit(); } } ネタ元 https://office-casual.biz/csharp-internet-tab-get/

C#でタイマにより一定時間間隔で処理を行う

C#

// formstimer.cs using System; using System.Windows.Forms; public class FormsTimerTest { static void Main() { FormsTimerTest ftt = new FormsTimerTest(); ftt.Run(); } public void Run() { Timer timer = new Timer(); timer.Tick += new EventHan…

C#のProgressBarバーのスタイルを変更する

C#

StyleプロパティにProgressBarStyle列挙体の値を指定します。 Blocks 分割されたブロックの数を増加させていくことで進行状況を示す Continuous バーのサイズを滑らかに連続的に増加させていくことで進行状況を示す Marquee ProgressBar の上を絶え間なくブ…

C#でリソースの追加方法

C#

リソースデザイナを表示するには、メニューの「プロジェクト」-「プロパティ」でプロジェクトデザイナを表示し、「リソース」タブを選択します ネタ元 https://dobon.net/vb/dotnet/programing/vsresource.html#section2

C#のフォームで×ボタンがクリックされても終了させない

C#

リソースエディタでFormClosingイベントを追加する private void Proto_FormClosing(object sender, FormClosingEventArgs e) { e.Cancel = true; } ネタ元 https://www.tetsuyanbo.net/tetsuyanblog/23478

C#のフォームでアイコン、ボタン類を非表示

C#

ControlBox = false; ネタ元 https://symfoware.blog.fc2.com/blog-entry-2203.html

SHDocVw.InternetExplorer COMを用いてIE (InternetExplorer)を自動制御で html取得

C#

参照設定で、タイプライブラリ Microsoft Internet Controls (SHDocVw.DLL) Microsoft HTML Object Library (MSHTML.DLL) を追加しておく。 var IE = new SHDocVw.InternetExplorer(); IE.Visible = true; IE.Navigate(get_uri); while (IE.Busy == true || …

C#でIEを操作

C#

「C#でIEを自動制御しよう (目次)」を参考にしよう 参考サイト http://blog.clockahead.com/search/label/IE

C#でログイン必要なサイトにログインしてデータ取ってくる

C#

以下のページを元にがんばれ! 参考ページ http://c-loft.com/blog/?p=637 https://dobon.net/vb/dotnet/internet/webrequestsavefile.html

C#でループの最初だけ特別な処理を行う

C#

LINQってのを使う。 「LINQ は foreach のパワーアップ版」と考えるといいらしい var data = new[] { 0, 1, 2, 3, 4, 5, 6, 7 }; // LINQ if (data.Any()) { var first = data.First(); Console.WriteLine("最初にやる処理 {0}", first); foreach (var i in …

C# nameof 演算子で引数名などを文字列として取得できる

C#

// "引数名は args です" と出力される Console.WriteLine($"引数名は {nameof(args)} です"); ネタ元 http://fernweh.jp/b/csharp-nameof-operator/

C#でConfigurationManagerクラスを使うには参照から追加の必要あり

C#

usingにSystem.Configurationを追加するだけではダメで、プロジェクトの参照から追加する必要がある。参照追加方法 「ソリューションエクスプローラー」→「参照」右クリック→「参照の追加」アセンブリ:フレームワーク内にある「System.Configuration」にチ…

C# Log4Net を利用してログを記録する

C#

設定はプロジェクトファイルのApp.config に組み込む方法のほうが好きかな。 ネタ元 http://blog.hiros-dot.net/?p=5461 https://qiita.com/rohinomiya/items/2b86c4e8d5afd5c2fb39

C# パス文字列からファイル名部分を取り出す

C#

string filename = Path.GetFileName(sourceFilePath); ネタ元 http://www.atmarkit.co.jp/ait/articles/0405/28/news083.html

C# 呼び出し元のファイル名、行数、関数名を取得

C#

ログ出し用に使えますね。.Net4.5から用っぽい public void Debug(string mess, [System.Runtime.CompilerServices.CallerMemberName] string memberName = "", [System.Runtime.CompilerServices.CallerFilePath] string sourceFilePath = "", [System.Runt…