2021-01-01から1年間の記事一覧

【IT】ダンプ(dump)

ダンプ(dump) 加工しないで出力することで、特に未加工で出力する点が、出力と異なる。コンピュータの記憶装置(メモリやストレージなど)に記録された内容をまとめて表示、印刷、記録などすることや、そのようにして写しとられた内容をダンプという。メモ…

正規表現

正規表現とは 正規表現(Regular Expression)とは、”文字の組み合わせ”を表現する記法の1つで、正規表現が多く用いられる場面は文字列に対してパターン(正規表現)マッチングである。例えば、毎年リリースされるiPhoneシリーズについて考える。一般的にiPh…

【Java】エラーと例外

Javaのエラーと例外 Javaのエラー(Error)や例外(Exception)は全てThrowableクラス配下にある。Javaには他言語と異なりException配下に2つの系統があり、Runtime Exception(非検査例外)とその他(検査例外)がある。 Error 文字通りのエラーで、メモリ…

【MicroSoft Office】パスワード

ファイルのパスワード Office製品のファイルExcel、Word、Power Pointはxmlをひとまとめにしたもので、拡張子をzipに変更して解凍するとxmlの内部を見ることが出来る。パスワードをかけた場合の挙動を確かめる。 書き込み 読み取り 書き込み・読み取り zipに…

【Microsoft Word】アカウント情報を消す

作成者と前回保存者 Miscrosoft Word(以下、Word)で文書を作成して、公開することを考えたときに対象のファイルを右クリック⇒[プロパティ]⇒[詳細]でWordのアカウント情報が"以下の画像のように作成者"と"前回保存者"に表示されてしまうので、削除する方法 …

【C#】valueがlistのDictionary

var mData = new Dictionary<string, List<string>> { { "X", new List<string>() { "あ", "い", "う" } }, { "Y", new List<string>() { "か", "き", "く" } }, { "Z", new List<string>() { "さ", "し", "す" } } }; var sData = new Dictionary<string, List<string>> { { "X", new List<string>(){ "あ", "あ", "あ", "い", "う", "</string></string,></string></string></string></string,>…

【C#】継承

文法 class 派生クラス名 : 基底クラス{} 継承とは あるクラスを元(基底)として新しいクラス(派生)を作成すること派生クラスのインスタンスは暗黙的に基底クラスのインスタンスを持つこのため、基底クラスのメンバにもアクセスすることができる 隠蔽 派…

【文字コード】入門

文字コード(Character Code) 文字や記号をコンピュータ上でデータとして扱うために、1文字ずつ固有のビット列(0と1)を与えた符号のこと 通常、7ビット(128通り)または8ビット(256通り)を最小単位とする。 文字集合 文字コードを定義するためには、言語…

【Java】画像ファイルを2分割する

分割側コード import java.awt.image.BufferedImage; import java.io.File; import java.io.InputStream; import java.util.ArrayList; import javax.imageio.ImageIO; public class ImageDivided { private InputStream inputStream; public ImageDivided(I…

【C#】Disposeパターン

using usingは自動的に、finallyで必ずDispose()を呼び出すtry...finallyを作成するだけ。ただし、メンバ等にはusingが使えない。。。⇒Disposeパターン Dispose()の必須事項 安全に複数回呼び出し可能であること インスタンスが保持しているリソース(OSや外…

【C#】環境系

環境変数の値を取得 var ret = System.Environment.GetEnvironmentVariable("環境変数名"); // 変数名があれば値、なければNULL 実行中のプログラムのexe/dllのパスを取得 var ret = System.Reflection.Assembly.GetExecutingAssembly(); // 実行中のアセン…

【C#】ファイル系

存在チェック System.IO.File.Exists("パス"); // Trueならファイルが存在 System.IO.Directory.Exists("パス"); // Trueならディレクトリが存在 パスがローカルか var uri = new System.Uri("パス"); uri.IsLoopback; // Trueならローカル ループバック 送…

DLLハイジャッキング

DLLハイジャッキング マルウェアが不正DLLを読み込ませることによって正規プロセスに不正な動作を実行させる。 例)署名のない不正なDLLを読み込んで、不審な外部ドメインへの通信を試みる。 多くのDLLハイジャッキングの手口は、OSやアプリケーションの脆弱…

Windowsのレジストリ

レジストリとは Windowsやソフトウェアの情報が保存されている、key-valueから成るwindowsパソコン内の階層型データベース。本来はユーザ側が何もしなくても勝手に設定の変更・削除・更新が行われる。情報は、データに付けられた「名前」、数値や文字列など…

Endian

Endian コンピュータ内部は2進数(表記は16進数)00000000~11111111 サイズの大きなデータを1バイト単位に分割して、連続した領域に書き込む際 上位バイトから配置⇒Big Endian 下位バイトから配置⇒Little Endian

暗号化

イメージ 暗号化イメージ 共通鍵暗号方式 暗号化と復号に同じ鍵を使用 メッセージ認証(Message Authentication)ではメッセージに付加するMAC(Message Authentication Code)の生成と確認に共通鍵暗号方式を使用する。 公開鍵暗号方式 暗号化に公開鍵、復…

【C#】strNumの形で一意な識別子の文字列

背景 文字列のidで重複があった場合文字列+数値の形で重複を避けたい。 コード(C#) using System; using System.Linq; using System.Text.RegularExpressions; using System.Collections.Generic; class Program { static void Main() { var TAIL_NUMBER = "…

【OOXML】Cellの子要素

18.3.1.4 c(Cell)[p.1603], CT_Cell[p.3928] CT_Cellの定義では、Cellには以下の子要素がある <xsd:sequence> <xsd:element name="f" type="CT_CellFormula" minOccurs="0" maxOccurs="1"/> <xsd:element name="v" type="s:ST_Xstring" minOccurs="0" maxOccurs="1"/> <xsd:element name="is" type="CT_Rst" minOccurs="0" maxOccurs="1"/> <…</xsd:element></xsd:element></xsd:element></xsd:sequence>

【プログラミング】n進数の変換

n進数の変換 Excelの列について、アルファベット⇔数字の変換を実施しようとn進数の変換を実施しようとしたら、いろいろ忘れていたので復習。 10進数からn進数の変換 基数nで「すだれ算」を行い、余りを下から足していけば完了。 基数で割る⇒桁を1つ下げる 余…

【OOXML】シートの行とセルの位置について

OOXMLの定義 ttkcd.hatenablog.com row要素、c要素の位置を表す属性は、どちらも任意で必ずしも指定されているわけではない。 属性が指定されている場合と、されていない場合を実際にxmlファイルを修正してExcelファイルで開いて確認してみる。 結論としては…

【OOXML】WorksheetのRowとCell

18.3.1.73 row(Row)[p.1685], CT_Row[p.3927] ワークシートの行情報を扱う要素。また行内のすべてのセル定義を含む。 属性名 説明 型 要否 r シート内の行のインデックスが指定されている。 unsignedInt 任意 18.3.1.4 c(Cell)[p.1603], CT_Cell[p.3928] ワ…

【Excel】列の幅について

列の幅を決定する要素 列の幅は、デフォルトフォントとサイズに元に決定される。 デフォルトフォントとサイズは以下の図に示す通り、[ファイル]-[オプション]-[全般]-[新しいブックの作成時]から確認することができる。 デフォルトフォント 本文のフォントと…

【C#】インデクサ

インデクサ(Indexer) プロパティのようなもので、あたかも配列変数にアクセスするかのようなソースコードを記述することによって、ユーザがあらかじめ記述したコードを実行させる機能 自作クラスにインデクサを定義 class Greeting{ private List<string> Greet; pub</string>…

Jarを自作してそれを使用したファイルを実行

参考にしたサイト ■jarの作成 jarコマンド ■コンパイルと実行 クラスパスはどこに通るのか?本当に理解しておこう 作るもの コマンドプロンプトから数字を受け取ってFizzBuzzを判断 FizzBuzz.java⇒C:\JarPrac\MakeJar\jp\co\ThisIsMyLib Main.java⇒C:\JarPra…

OSの構成

基本ソフトウェア 以下の3つから構成される 制御プログラム(OS) 言語プロセッサ サービスプログラム サービスプログラム(ユーティリティ)は、システムの運用を支援するプログラムで、記憶媒体間のデータ転送、ファイルの複写・削除・整理などの処理を行…

Null安全

null許容参照型を使うことによって、null安全となる。 参照型は許容するもなにもnullがつきものでは? nullは意図して使っている場合もあるため、nullを意識してコーディングが可能になるのがC#8.0以降に導入されたnull許容参照型 参照型の定義方法 普通の参…

Shared String Table パーツ(sharedStrings.xml)について

12.3.15 Shared String Table Part[p.98] workbookのすべてのworksheetに出現する文字列が定義されているパーツ。 worksheetのセルは、後述する要素のコレクションのインデックスを使用して文字列をUIに表示する。 18.4.9 sst(Shared String Table)[p.1734],…

ASP.NET MVC ファイルダウンロード

ファイルダウンロード内容 Views/Upload/Download.cshtmlでダウンロードボタンをクリック セッションにあるファイルをダウンロードする 作成物 Views/Upload/Download.cshtmlを修正してダウンロードボタンを追加 Controllers/DownloadsController.csを作成し…

ASP.NET MVC ファイルアップロード

ファイルアップロード内容 Views/Move/Upload.cshtmlでファイルを選択する アップロードボタンをクリックするとダウンロード画面へ遷移する 作成物 Views/Move/Upload.cshtmlを修正して、アップロード用のフォームを作成 Controllers/UploadControllers.csを…

ASP.NET MVC セッションを有効にする

作成物 Startup.csを編集 修正内容 Startup.cs ConfigureServices public void ConfigureServices(IServiceCollection services) { services.AddControllersWithViews(); // 追加 開始 services.AddSession(options => { options.IdleTimeout = TimeSpan.Fro…