C#

スポンサーリンク
C#

C# Tips | 日付・時間処理:ローカル変換

はじめに 「ローカル変換」は“人間にとっての時間に戻す”作業UTC変換が「システムにとって都合のいい時間」にそろえる作業だとしたら、ローカル変換はその逆で、「人間が暮らしているタイムゾーンの時間に戻す...
C#

C# Tips | 日付・時間処理:UTC変換

はじめに 「UTC変換」は“時間のものさしを世界共通にそろえる”作業業務システムで日時を扱うとき、「サーバーのタイムゾーンが違う」「海外リージョンにデプロイする」「他システムと連携する」こういう場面が...
C#

C# Tips | 日付・時間処理:現在日時取得

はじめに 「現在日時取得」は“すべてのログと期限の起点”になる業務システムで「今の日時」は、ほぼどこでも使います。ログのタイムスタンプ、締切チェック、バッチの実行時間、更新日時の保存など、「いつ?」を...
C#

C# Tips | 文字列処理:Unicode正規化

はじめに 「Unicode正規化」は“見た目は同じ文字を、本当に同じにそろえる”作業Unicode正規化は、一言でいうと「見た目は同じなのに、内部的なバイト列が違う文字列を、同じ形にそろえる」処理です...
C#

C# Tips | 文字列処理:Levenshtein距離

はじめに 「Levenshtein距離」は“どれくらい似ているか”を数字で教えてくれるものLevenshtein(レーベンシュタイン)距離は、「ある文字列を別の文字列に変えるために、何回“1文字の挿入...
C#

C# Tips | 文字列処理:曖昧検索

はじめに 「曖昧検索」は“ちょっと間違っていても拾ってあげる”検索業務システムで検索機能を作ると、こんなことが起きがちです。「ユーザーが Yamda とタイプミスしても、本当は Yamada を出した...
C#

C# Tips | 文字列処理:部分一致検索

はじめに 「部分一致検索」は“文字列の中から、手がかりを探す”作業業務システムでは、こういうことをよくやります。商品名に「りんご」が含まれているデータだけを抽出したいログの1行の中に「ERROR」とい...
C#

C# Tips | 文字列処理:文字列比較(大文字無視)

はじめに 「大文字無視の文字列比較」は“人間の感覚に合わせる”ためのテクニック業務システムでは、ユーザー名、コード値、フラグ文字列などを比較するときに、「OK と ok は同じとみなしたい」「Yes ...
C#

C# Tips | 文字列処理:XML圧縮

はじめに 「XML圧縮」は“意味はそのまま、見た目だけ最小化する”ここでいう「XML圧縮」は、GZip などのバイナリ圧縮ではなく、改行・インデント・余計な空白をできるだけ取り除いて、XML文字列を短...
C#

C# Tips | 文字列処理:XML整形

はじめに 「XML整形」は“タグの森に道をつける”作業XMLは、設定ファイル、外部システム連携、古めのWebサービスなどで今でもよく使われますが、そのまま1行でベタッと出てくると、とても読みにくいです...
C#

C# Tips | 文字列処理:JSON圧縮

はじめに 「JSON圧縮」は“意味は変えずに、できるだけ短くする”ことここでいう「JSON圧縮」は、GZipなどのバイナリ圧縮ではなく、「余計な改行・インデント・スペースを削って、JSON文字列を最小...
C#

C# Tips | 文字列処理:JSON整形

はじめに 「JSON整形」は“ぐちゃぐちゃなJSONを、人間が読める形にする”作業APIレスポンス、ログ、設定ファイル——JSONは業務システムのあちこちに出てきますが、そのままだと{"id":1,"...
C#

C# Tips | 文字列処理:URLデコード

はじめに 「URLデコード」は“URL用に変形された文字列を、人間の世界に戻す”処理URLエンコードは、「URLの中で問題になりそうな文字(日本語・スペース・記号など)を、安全な形(%xx や +)に...
C#

C# Tips | 文字列処理:URLエンコード

はじめに 「URLエンコード」は“文字列をURLの世界に適応させる変換”URLエンコードは、「URLの中でそのまま使うと問題が出る文字を、安全な形に変換する」処理です。日本語、スペース、記号類などをそ...
C#

C# Tips | 文字列処理:Base64デコード

はじめに 「Base64デコード」は“梱包されたデータを元に戻す”作業前回の「Base64エンコード」は、バイナリや文字列を「壊れにくい文字列」に梱包する話でした。Base64デコードは、その逆です。...
C#

C# Tips | 文字列処理:Base64エンコード

はじめに 「Base64エンコード」は“中身を壊さずに文字列として運ぶための梱包”Base64エンコードは、「バイナリデータ(生のバイト列)を、安全に文字列として扱える形に変換する仕組み」です。メール...
C#

C# Tips | 文字列処理:SHA256生成

はじめに 「SHA256生成」は“文字列に指紋をつける”行為SHA256 は、どんな長さのデータでも「256ビット(32バイト)の固定長のハッシュ値」に変換する仕組みです。イメージとしては、「中身は見...
C#

C# Tips | 文字列処理:文字列ハッシュ化

はじめに 「文字列ハッシュ化」は“中身を見せずに、同じかどうかだけ知る”技文字列ハッシュ化は、一言でいうと、「文字列の中身を、一定長の“指紋”に変換すること」です。元の文字列がどれだけ長くても、ハッシ...
C#

C# Tips | 文字列処理:文字頻度カウント

はじめに 「文字頻度カウント」は“テキストのクセを数字で見る”道具文字頻度カウントは、「この文字列の中で、どの文字が何回出てくるか」を数える処理です。一見お勉強っぽいテーマですが、業務でもログ解析、入...
C#

C# Tips | 文字列処理:文字列反転

はじめに 「文字列反転」は“ただのお遊び”で終わらせるには惜しいテクニック「文字列を逆順にする」——いかにも練習問題っぽいテーマですが、実務でも意外と出番があります。ログやIDの一部をマスクして見せた...
C#

C# Tips | 文字列処理:指定行取得

はじめに 「指定行取得」は“長いテキストから、ピンポイントで1行だけ抜き出す”技ログファイル、設定ファイル、外部システムからのテキスト——業務では「長いテキストの中から、n行目だけ欲しい」という場面が...
C#

C# Tips | 文字列処理:行分割

はじめに 「行分割」は“テキストを“1行ずつの粒”にする基本技”長いテキストを扱うとき、「1行ずつ処理したい」「行番号を付けたい」「空行をスキップしたい」といったニーズは、業務システムでも頻出です。そ...
C#

C# Tips | 文字列処理:改行コード統一

はじめに 「改行コード統一」は“見えない差異でバグらないための下ごしらえ”業務でテキストを扱っていると、「見た目は同じなのに、なぜか比較で不一致になる」「CSVがうまく分割できない」みたいな、地味だけ...
C#

C# Tips | 文字列処理:SQLインジェクション対策

はじめに 「SQLインジェクション対策」は“文字列をいじる話ではなく、SQLの組み立て方の話”「文字列処理のユーティリティ」と聞くと、「シングルクォートを2つに置き換えるエスケープ関数を作ればいいのか...
C#

C# Tips | 文字列処理:CSVエスケープ

はじめに 「CSVエスケープ」は“カンマや改行を、1セルの中に閉じ込める”技業務で CSV を扱うとき、いちばんよくハマるのが、「値の中にカンマや改行が入っていて、列がズレる」という問題です。例えば、...
C#

C# Tips | 文字列処理:HTMLアンエスケープ

はじめに 「HTMLアンエスケープ」は“記号に戻して、元のテキストを取り出す”技さっきの「HTMLエスケープ」は、< や > を < や > に変えて「安全な文字列」にする処理でした。HT...
C#

C# Tips | 文字列処理:HTMLエスケープ

はじめに 「HTMLエスケープ」は“文字列をHTMLとして誤解させないための防御”Web画面を作るとき、ユーザーが入力した文字列をそのままHTMLに埋め込むと、とても危険です。なぜなら、<script...
C#

C# Tips | 文字列処理:省略文字列生成

はじめに 「省略文字列生成」は“長すぎる情報を、いい感じに切る”技業務システムを作っていると、「全部は見せられないけど、雰囲気は伝えたい」という場面がよく出てきます。ログに長いメッセージを全部出すと読...
C#

C# Tips | 文字列処理:パディング(右)

はじめに 「右パディング」は“枠を決めて、左にそろえて並べる”技左パディングが「右寄せ」だとしたら、右パディングはその逆で「左寄せ」をきれいにそろえるためのテクニックです。業務システムだと、例えばこん...
C#

C# Tips | 文字列処理:パディング(左)

はじめに 「左パディング」は“桁をそろえて、きれいに並べる”技業務システムでは、こんな表示やデータ形式がよく出てきます。1 → 001 にしたい(3桁でゼロ埋め)A → A にしたい(4文字幅で右寄せ...
C#

C# Tips | 文字列処理:ランダム文字列生成

はじめに 「ランダム文字列生成」は“それっぽいIDやトークンを安全に作る”技業務システムで「ランダム文字列」が欲しくなる場面はたくさんあります。一時パスワードメール確認用トークン招待コードファイル名の...
C#

C# Tips | 文字列処理:UUID生成

はじめに 「UUID生成」は“かぶらないIDを雑に、でも安全に作る”技業務システムを作っていると、ほぼ必ず出てくるのが「一意なIDが欲しい」という場面です。注文ID、トランザクションID、ファイル名、...
C#

C# Tips | 文字列処理:電話番号検証

はじめに 「電話番号検証」は“ぐちゃっとした入力を、安全な数字列に整える”仕事電話番号入力って、郵便番号以上に“ゆらぎ”が激しいです。03-1234-56780901234567803−1234−56...
C#

C# Tips | 文字列処理:郵便番号検証

はじめに 「郵便番号検証」は“ゆらぎを受け止めて、きっちり7桁にそろえる”仕事郵便番号入力って、一見シンプルに見えますよね。「7桁の数字でしょ?」で終わりそうですが、実務ではそうはいきません。「123...
C#

C# Tips | 文字列処理:URL検証

はじめに 「URL検証」は“危なそうな文字列を入口で止めるフィルタ”業務システムで URL を扱う場面は多いですよね。ユーザーが入力したホームページURL外部サービスのコールバックURL管理画面で設定...
C#

C# Tips | 文字列処理:メールアドレス検証

はじめに 「メールアドレス検証」は“現実と割り切りのバランスを取る技”業務システムでほぼ確実に出てくるのが「メールアドレス入力欄」です。ここで悩ましいのが、「どこまで厳密にチェックするか?」です。RF...
C#

C# Tips | 文字列処理:日本語判定

はじめに 「日本語判定」は“文字列の中身の“顔ぶれ”を見分ける技業務システムだと、こんな要件がよく出てきます。氏名は日本語で入力してほしい(漢字・ひらがな・カタカナ)ログインIDは日本語禁止(英数字の...
C#

C# Tips | 文字列処理:英字のみ抽出

はじめに 「英字のみ抽出」は“コードやIDからアルファベットの芯だけを抜き出す”技業務システムでは、こんな文字列がよく出てきます。"UserID: AB123""商品コード: JP-2025-001"...
C#

C# Tips | 文字列処理:数字のみ抽出

はじめに 「数字のみ抽出」は“文字列から数値の芯だけを取り出す”技業務システムでは、こういう文字列がよく出てきます。"ID: 12345""注文No=AB-2025-00123""TEL 03-123...
C#

C# Tips | 文字列処理:正規表現置換

はじめに 「正規表現置換」は“パターンで探して、一気に書き換える”技一致判定は「合っているかどうか」、抽出は「取り出す」でした。正規表現置換は、そのさらに一歩先——「合っているところを、別の形に書き換...
C#

C# Tips | 文字列処理:正規表現抽出

はじめに 「正規表現抽出」は“文字列の中から欲しいところだけをすくい取る”技一致判定(IsMatch)は「ルールに合っているか?」を見るだけでしたが、業務ではそれだけでは足りません。ログの 1 行から...
C#

C# Tips | 文字列処理:正規表現一致判定

はじめに 「正規表現一致判定」は“文字列ルールをコードにする道具”業務システムでは、「この文字列はメールアドレス形式か?」「このコードは英数字だけか?」「この入力は3桁の数字か?」といった“ルールチェ...
C#

C# Tips | 文字列処理:文字列結合

はじめに 「文字列結合」は“バラした情報を一つの形にまとめる”技さっきまで「文字列分割」でバラす話をしてきましたが、業務ではその逆——「バラバラの情報を 1 本の文字列にまとめる」場面も同じくらい多い...
C#

C# Tips | 文字列処理:文字列分割

はじめに 「文字列分割」は“バラしてから意味をつける”ための基本技業務システムでは、「1本の文字列の中に、複数の値が詰め込まれている」ことがよくあります。CSV の 1 行、区切り文字付きの設定値、ユ...
C#

C# Tips | 文字列処理:ケバブケース変換

はじめに 「ケバブケース変換」は“フロントエンド世界との共通語”C# の世界では UserName(PascalCase)や userName(camelCase)が主流ですが、フロントエンドや一部の...
C#

C# Tips | 文字列処理:スネークケース変換

はじめに 「スネークケース変換」は“別世界の命名ルールをつなぐアダプタ”C# の世界では UserName や OrderId のような PascalCase/camelCase が主流ですが、業務で...
C#

C# Tips | 文字列処理:キャメルケース変換

はじめに 「キャメルケース変換」は“名前をそろえるためのルールエンジン”業務で C# を書いていると、「名前の書き方」をそろえたくなる場面がたくさん出てきます。JSON のプロパティ名、API のパラ...
C#

C# Tips | 文字列処理:小文字変換

はじめに 「小文字変換」は“ゆるく受け入れて、きっちり比べる”ための道具大文字変換と同じくらい、業務コードでよく使うのが「小文字変換(Lower)」です。特に、こんな場面で出てきます。ユーザー入力を小...
C#

C# Tips | 文字列処理:大文字変換

はじめに 「大文字変換」は“比較とフォーマットを安定させるための基本技”文字列処理の中でも、「大文字変換(Upper)」はかなり頻出のテクニックです。特に業務システムでは、こんな場面でよく使われます。...
C#

C# Tips | 文字列処理:半角→全角

はじめに 「半角→全角」は“見た目とフォーマットをそろえるための技”さっきの「全角→半角」は、検索や比較を安定させるための前処理でした。一方で「半角→全角」は、どちらかというと「見た目」と「フォーマッ...
C#

C# Tips | 文字列処理:全角→半角

はじめに なぜ「全角→半角」が業務でこんなに大事なのか日本語の業務システムでは、「見た目は同じなのに、文字コードが違うせいで一致しない」という事故が本当に多いです。「A」と「A」、「1」と「1」、「@...
C#

C# Tips | 文字列処理:空白トリム

はじめに 「空白トリム」は“バグの温床”を一気に減らすお掃除スキル業務システムで文字列を扱うとき、地味だけどめちゃくちゃ効くのが「空白トリム」です。ユーザー入力、CSV、設定ファイル、外部API――そ...
C#

C# Tips | 文字列処理:null安全文字列

はじめに 「null安全文字列」は“落ちないコード”への第一歩C# で業務コードを書いていると、かなりの頻度で出てくる例外があります。NullReferenceException――いわゆる「ヌルポ」...
C#

C# Tips | ファイル・ディレクトリ操作:ファイル復元

はじめに 「ファイル復元」は“やらかした後に助けてくれる最後の味方”バックアップを取るだけでは、まだ片手落ちです。本当に大事なのは、「壊したあとに、元に戻せること」です。設定ファイルを上書きしてアプリ...
C#

C# Tips | ファイル・ディレクトリ操作:世代管理バックアップ

はじめに 「世代管理バックアップ」は“時間を巻き戻すための仕組み”バックアップを「とりあえずコピーしておく」だけで終わらせると、すぐにこうなります。バックアップフォルダがファイルだらけでカオスになる。...
C#

C# Tips | ファイル・ディレクトリ操作:バックアップ作成

はじめに 「バックアップ作成」は“事故前提”でコードを書く技術業務システムでファイルを扱うなら、「バックアップをどう残すか」は避けて通れません。人が操作をミスることもあるし、プログラムがバグることもあ...
C#

C# Tips | ファイル・ディレクトリ操作:ファイル名重複回避

はじめに なぜ「ファイル名重複回避」が必要になるのか業務でファイルを扱っていると、かなりの頻度でこういう状況に出会います。同じフォルダに同名ファイルがすでに存在している。ユーザーが同じ名前で何度もエク...
C#

C# Tips | ファイル・ディレクトリ操作:禁則文字除去

はじめに 「禁則文字除去」は“事故る前の最後のガード”業務でファイル名やフォルダ名を「プログラム側で決める」こと、よくありますよね。ユーザーが入力したタイトルをそのままファイル名にしたい。日付やIDを...
C#

C# Tips | ファイル・ディレクトリ操作:パス安全化

はじめに 「パス安全化」は“ファイルを触る前の身だしなみ”業務でファイルを扱うコードを書くとき、本当によく出てくるのが「パス文字列」です。ユーザー入力、設定ファイル、外部システムから渡される値――それ...
C#

C# Tips | ファイル・ディレクトリ操作:ZIP解凍

はじめに 「ZIP解凍」ができると“受け取ったファイルをさばける人”になる業務だと、相手から渡されるファイルがそのままではなく、ZIP で固められていることが本当に多いです。日次バッチの結果、帳票一式...
スポンサーリンク