developer's diary

最近はc#のエントリが多いです

C# (dotnetcore) OpenPop.NETでGmailに接続してCAPAコマンドを実行

CAPAコマンドとは、POP3サーバーに実装されている機能を確認する為のコマンドです。 過去記事を振り返りしていたら、 以下の記事を見つけ、 C#でもUIDLが利用できるのか確認してみたので、記事にまとめときます。 mitsugeek.net ログ付きで確認 using System…

C# (dotnetcore) HttpClientを利用してredmineのAPIを叩く(プロジェクト一覧)

注意 単純なコンソールプログラムのため、 HttpClientをusingで囲わないでくださいという警告を無視しています。 redmineを準備 今回テストで利用するプロジェクトです。 redmineのページ ブラウザでアクセスした結果 APIにブラウザでアクセスすると、以下の…

C# (dotnetcore) スキャンしてOCR処理したPDFをiText7(AGPL)を利用して読み込んでみる

注意 iText7はAGPLライセンスです。利用する場合、利用者に対して、全ソースコードを公開する必要があります。 公開サイト等で利用する場合は、商用ライセンスの購入をお勧めします。 やりたいこと PDF名でディレクトリの存在チェック 存在しない場合、ディ…

C# (dotnetcore) Microsoft.Data.Sqlite と System.Data.SQLite の速度比較

前回の記事で作成したプログラムを1000回繰り返してどちらが早いか比較 mitsugeek.net ソース private static void Main(string[] args) { //Microsoft.Data.Sqlite + SQLitePCLRaw.bundle_e_sqlite3 System.Diagnostics.Stopwatch sw; sw = new System.Diag…

C# (dotnetcore) Microsoft.Data.Sqlite と System.Data.SQLite を利用してみる

NuGetでSystem.Data.SQLite.Coreを検索するとMicrosoft.Data.Sqlite と System.Data.SQLiteが現れた System.Data.SQLite.CoreをNuGetで検索 Download数をみると、Microsoft.Data.Sqliteの方が圧倒的に多い。 どっち使えばいいんだろ? ということでどっちも…

C# (dotnetcore)で標準出力を利用して進行中のスピナーを作る (6:完)

Console用のスピナー用の部品を作ろうという連載を初めて6記事目。 Console用のスピナー用の部品の開発は、今回を持って一旦終了とします。 前回の記事 mitsugeek.net Stepの実装を修正 ProgressBar.Step プロパティ をみても、特に何もしていなさそう。こ…

C# (dotnetcore) ディレクトリを指定してZIPファイルを解凍

前回の記事 mitsugeek.net 今回は解凍 前回の記事で圧縮したZIPファイルを解凍します。 今回も、System.IO.Compression を使います。 docs.microsoft.com ソースを記述 using System; namespace ZipArchiveExample { class Program { static void Main(strin…

C# (dotnetcore) ディレクトリを指定してZIPファイルを作成

System.IO.Compression を使います。 docs.microsoft.com 早速やっていきましょう。 テスト用のフォルダ・ファイルを作る mkdirコマンドでディレクトリを作成 mkdir /tmp/test/日本語フォルダ mkdir /tmp/test/日本語フォルダ/test mkdir /tmp/test/日本…

C# (dotnetcore)で標準出力を利用して進行中のスピナーを作る (5)

前回の記事 mitsugeek.net 課題 Consoleへの操作部分のテストをどうするか。 一つの解決策 Console.SetOutを利用して、Console.Outの出力先を変えてしまう。 [Fact] public void ConsoleTest() { var output = new System.IO.StringWriter(); Console.SetOut…

C# (dotnetcore) yield returnイテレーターは使った方が良いのか?

Mac Book Prodの dotnetcore3.1 で確認しました。 結論 結論からいうと、yield returnイテレーターを利用すると、メモリが節約され、若干時間が早くなった。 今回、指定したフォルダ配下のファイルを抽出する関数を、 Listと、IEnumerableでそれぞれ作成し、…