プログラミングとかブログ

Unity/C#/SRPGStudio/RPGツクールMVの情報とかその他気になったことを調べて書きます。

C#

【C#】クリップボードの内容でテキストファイルとフォルダ作るプログラム

ブログを書くときに一つのテキストで内容を書いてから完成した後にフォルダとファイル作ってコピペしています。 どうにも面倒なので表題のプログラムを作りました。 コピーした内容の1行目をタイトルにしたファイルとフォルダをデスクトップに作ります。 DL…

【C#】コンソールアプリからWPF起動して画像を表示する

前回の記事でフォームで画像表示するのがアレな気がしたのでWPFでやりました。参照にPresentationFrameworkとPresentationCoreとWindowsBaseを追加します。 MainメソッドにSTAThread属性を追加します。 using System; using System.Windows; using System.Wi…

【C#】コンソールアプリからフォームを起動して画像を表示する

C#

ブログ用のコードはコンソールアプリケーションで書いています。(コードが長くなるので) これだと画像表示に困るのでフォーム起動して画像を表示するコードを書きました。 画像はファイルから読み込んでいます。 void ImgFileDisplayByForm(string filePat…

【C#】アクセス拒否されないhttp通信のコードサンプル

http通信したら403エラー(Forbidden)が返ってきたのでどうにかしてみました。 using System; using System.Net.Http; class Program { static void Main(string[] args) { var uri = "http://i1.pixiv.net/img-original/img/2016/02/15/12/02/47/55302376_…

【C#】ネット上から画像のダウンロード

C#

HttpClientクラスのGetAsyncメソッドを使います。 はてなフォトライフの下記URLの画像を取ってきます。 http://f.st-hatena.com/images/fotolife/s/shirakamisauto/20160120/20160120232256.png using System; using System.Net.Http; using System.IO; name…

【C#】URLの最後を1行で取得する

C#

Console.WriteLine(url.Split('/')[url.Split('/').Length - 1]); なんかキモい。 LINQ版。 url.Split('/').Last(); using System.Linq;を追加しておくこと。こんな感じで使う。 string url = "https://pbs.twimg.com/media/CbJjbWlUMAABx6h.jpg"; Console.W…

【C#】1行で乱数生成するコード【random】

C#

Console.WriteLine(new Random().Next()); でも連続で処理するときは乱数にならないことがあるので注意 乱数シードがミリ秒なのでミリ秒以上の処理速度だと乱数が変わりません。 neue cc - C#とランダム 以下のように連続でやっても同じ値しか出ません。*1 C…

【C#】Tesseract.Net SDK使って文字読み取って認識する【OCR】

目次 準備 英語の読み取り 結果(上が読み取る画像、下が読み取った文字列) 日本語の読み取り 結果(上が読み取る画像、下が読み取った文字列) 準備 NugetからTesseract.Net SDKを取ってきます。 以下のusingディレクティブを追加します。 using Patagames…

C#超・初心者が知っておくべき10のエラー

C#

コピペ追記中心のC#超初心者がハマりそうなエラーを10個集めました。 目次(各エラー名は適当です) ;が足りないエラー }が足りないエラー 単品記述エラー 型違いエラー 未宣言使用・入力ミスエラー using参照無いエラー インデックスエラー static内で非sta…

【C#】ブクログの自分の棚ページをぶち込むと本一覧を書き出すコードを書いた

仕様が変わって文字だけ一覧表示がなくなったので怒りのスクレイピング。*1目次 コード 結果 解説 使い方 コード using System; using System.IO; using System.Collections.Generic; using System.Linq; using HtmlAgilityPack; namespace BookLogScraper {…

【C#】ニコニコのアニメ配信リストを取得して一覧を書き出すコードを書いた

ch.nicovideo.jp をいちいち見るのが面倒なので一覧取得することにしました。目次 コード 結果 解説 コード using System; using System.Collections.Generic; using System.Linq; using System.IO; using System.Net.Http; using HtmlAgilityPack; namespac…

【C#】今日の日付でファイルのバックアップをする方法

C#

メモ書きの日付ごとのバックアップが欲しくなったけど、Gitだのsvnだの使うほどでもないのでパパッと作ってみました。 using System; namespace ConsoleApplication2 { //今日の日付で特定ファイルをバックアップ class Program { static void Main(string[]…

Unityでよく出る警告CS0168 CS0414 CS0649の意味

Unityでよく出る(自分がよく出す)警告の意味を調べてみました。 まあUnityというかVisualStudioの警告なんですが、Unityだと英語で表示されるので、 パッと見わかりにくいんですよね。CS0168:変数未割り当て Assets/Test.cs(9,13): warning CS0168: The v…

DataGridTextColumnでコピー時エラーへの対処

C#

xamlでDataGridTextColumnを作って、セルを1回クリックして選択状態にし、Ctrl+Cでコピーすると、例外が発生して落ちました。 詳細は以下のような例外でした。 System.Runtime.InteropServices.COMException はハンドルされませんでした。 HResult=-2147221…

今月の経過した日にち・残りの日にちリストを1行で作成する

C#

・今月の経過した日にちの列挙 new List<int>(Enumerable.Range(1, DateTime.Today.Day)) ・今月の残りの日にちの列挙 new List<int>(Enumerable.Range(DateTime.Today.Day + 1, DateTime.DaysInMonth(DateTime.Today.Year, DateTime.Today.Month) - DateTime.Today.Da</int></int>…

VisualStudioでクラスがどこの名前空間にあるのか確かめる方法

C#

適当なサイトからコードをコピペしてきたときに、「型または名前空間名 'xxxx' が見つかりませんでした。using ディレクティブまたはアセンブリ参照が不足しています。」というエラーが出るときがあります。 クラス名(または名前空間)は合っていても、属す…

staticメソッド内でstaticでないメンバを参照できない理由

C#

11/10 間違っちゃいないけど正確でもなかったので書き直しMainメソッドなどstaticメソッド内でstaticでないメンバーを扱おうとすると以下のエラーが出ます。 「静的でないフィールド、メソッド、またはプロパティ 'xxxxxx' で、オブジェクト参照が必要です。…

C#でWebサイトにログインする方法

C#

前回の記事で書くといった某サイトへのログイン方法です。まずログインするための情報を探します。 記事を書いた時点でのログインページのフォーム部分のhtmlが以下になります。 inputタグの部分にログインに必要な情報があります。 <h2 class="title">pixivへログイン</h2>

HttpClientでhttps通信できるのだろうか?

System.Net.Http.HttpClient 接続のセキュリティを確保する方法 (C#/VB と XAML を使った Windows ストア アプリ) (Windows)を見ると、以下のようにhttpsのURIを指定するだけでOKのようです。簡単ですね。 await (new HttpClient()).GetAsync("https://www.c…

アクティブウインドウのスクリーンショットを周期的に撮るだけ

ストアアプリのスクショを撮ろうと思ったら ドスパラのwinタブレットで仕様でできなかったので、 どうにかすることにしました。以下コードです。 using System; using System.Windows.Forms; using System.Threading; namespace AutoScreenShot { class Prog…

warning CS0108 ○○ は継承メンバー ○○ を隠します。の意味

Unityで以下のような警告が出るときがあります。warning CS0108: ○○' は継承メンバー '○○' を隠します。意図的に隠す場合はキーワード new を使用してください。Assets/Scripts/InheritTestDerived.cs(16,21): warning CS0108: `InheritTestDerived.Reset()'…

Where(x => x)の意味

C#

Where(x => x)の意味:コレクション内の値のうちtrueのものを探すWhere内は条件文なので(x => x)だと(x => x == true)を意味します。そしてWhere(x => !x)は(x => x == false)を表します。以下のコードを見ると動きがわかると思います。using System;using S…