HUSKING - kotteri

技術系Note

C#

【C#】ファイル内容のハッシュ値を求める

C#

ファイルの同一性チェックなどでよくハッシュ値を使われることがある 今回はC#でファイルのハッシュ値を求めてみる ハッシュ値を求めるファイルの内容 123456789 あいうえお 実際のコード class Program { static void Main(string[] args) { // EXEパスを取…

【C#】複数のファイルを結合し、一つのファイルにまとめる

C#

複数のファイルを結合して、一つのファイルにまとめてみる 手法は簡単で一つずつファイルを読みだして、結果ファイルに書き出していくだけ 結合するファイル 今回は3つのファイルを結合してみる ※ ファイルのエンコードは"UTF-8(BOM無し)" ファイル1(sr…

【C#】ファイルの読み書きを一度に行う

C#

ファイルの一部を読み込んで書き換えをするのに、 一度別ファイルに書き出して置き換えるという手順が面倒だったので、 別ファイルを作成せずに行う方法を試してみた。 実行前のファイル(Text.txt)の中身 123456789 あいうえお ※ ファイルのエンコードは"U…

【C#】画像の2値化(閾値固定)

C#

画像処理として、2値化をやってみる ※閾値を固定にしています。いつか判別分析で求めてみたい。 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System…

【C#】XMLを扱ってみる

C#

ほとんどJSONの時と同じhusk.hatenablog.com 1. XMLファイル作成用メソッドを用意 using System.IO; // ←追加 using System.Xml.Serialization; // ← 追加 namespace XMLTestApp { public static class XmlUtils { /// <summary> /// XMLデータ書き込み /// </summary> /// <param name="obj">XML</param>…

【C#】アプリケーションの2重起動防止(Mutex)

C#

※これが本当に正しいかは自信ありません。。 Windowsフォームアプリケーションの場合 static class Program { // 重複起動チェック用 private static Mutex mutex; static void Main() { bool hasHandle = false; // 初期所有権なしでMutexを生成 // Mutex名…

【C#】WPFアプリケーションにて起動および終了を制御する

C#

App.xamlを編集 アプリ起動時に呼ばれる画面の設定を削除 ・編集前 <Application x:Class="TimeCard.App" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:local="clr-namespace:TimeCard" StartupUri="MainWindow.xaml"> ↓ StartupUri を削除・編集後 </application>

【C#】Yahoo雑談対話APIを試してみる

C#

コンソール上で雑談会話APIと会話してみる Yahoo雑談会話APIの利用登録 1. docomoのデベロッパーサイトへ行き、新規登録をする dev.smt.docomo.ne.jp ちなみに自分はGoogleアカウントで登録 2. 利用申請 マイページより[API利用申請・管理] > [新規API利用申…

【C#】正規表現

C#

準備 using System.Text.RegularExpressions; 半角数字のみ string target1 = "0123"; string target2 = "a012"; Regex regex = new Regex(@"^[0-9]+$"); Console.WriteLine(regex.IsMatch(target1)); Console.WriteLine(regex.IsMatch(target2)); コンソー…

【C#】HttpClientを使ってみる(POST)

C#

HttpClientを使用してJSON形式のデータをPOSTしてみる リクエストメソッド作成 using System.Net.Http; // ←追加 private static HttpClient client = new HttpClient(); private async Task<string> sendRequest(string url, string json) { // メソッドにPOSTを指</string>…

【C#】VB6のLeftB関数をC#で書いてみる

C#

シフトJIS //---------------------------------------- // 文字列の左端から指定したバイト数分の文字列を返す(シフトJIS) //---------------------------------------- string target = "はてなBLOG"; System.Text.Encoding encoding = System.Text.Enco…

【C#】VB6のLenB関数をC#で書いてみる

C#

シフトJIS //---------------------------------------- // 文字列のバイト数を取得(シフトJIS) //---------------------------------------- string target = "はてなBLOG"; int cnt = System.Text.Encoding.GetEncoding(932).GetByteCount(target); Cons…

【C#】DataContractJsonSerializerでJSONを扱う

C#

使用するための準備 1. シリアライズ(Object > JSON)用メソッドを作成 using System.IO; // ←追加 using System.Runtime.Serialization.Json; // ←追加 namespace JsonTestApp { public static class JsonUtils { /// <summary> /// オブジェクトからJSONへ変換しま</summary>…

【C#】インスタンスの動的生成(Type.Invokember)

C#

※ TestClassというクラスは事前に作成しておく。 文字列からインスタンスを生成(動的にインスタンスを生成するのに便利) string[] weekDays = { "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" }; // NameSpaceという名前空間のTestClassのインスタンス…

【C#】Windowsでの tail -f 的なことをしたかった

C#

ので、簡易的なものを作ってみた string file = "c:\aaa.txt"; FileInfo fi = new FileInfo(file); if (!fi.Exists) { Console.WriteLine(string.Format("指定されたファイル({0})が存在しません", file)); } using (FileStream fs = fi.Open(FileMode.Ope…

【C#】ユーザー定義のExceptionクラスの作り方

C#

Exceptionクラスを継承した自前クラスを作るだけ。 public class OriginalException : Exception { public OriginalException() { } public OriginalException(string message) : base(message) { } public OriginalException(string message, Exception inn…