2015-01-01から1ヶ月間の記事一覧

VB.NETでも独自のエンコーディングを実装したい(前編)

はじめに 少し前にPythonで独自の文字コードを実装しました。 jyuch.hatenablog.com あれを今回はVB.NETでやるというという誰も望まないし誰も得しない企画です。 符号化文字集合及び文字符号化方式はPython版から流用します。 ドキュメントは大切に System.…

VB.NETでもLenメソッドを・・・

はじめに VB.NET特有*1のMicrosoft.VisualBasic.Strings.Lenメソッドってありますよね。 Strings.Len メソッド (Microsoft.VisualBasic) 正直弊社はアレは好きになれないんですよね。 説明文が正直意味がよくわかんないし。 文字列内の文字数または変数を格…

VB.NETでも名前空間に別名を付けたい

別名 VB.NETは(無論C#もですよ)名前空間に別名を付けられます。 Imports コンソール = System.Console Imports AAB = ImportAlias.Hoge.AAA Imports BBA = ImportAlias.Hoge.Fuga.BBB Module Module1 Sub Main() Dim bba = New BBA() bba.SubBBB() Dim aab…

VB.NETでも独自の等値演算子を実装したい

はじめに 前回の記事を書いていた時私は勘違いをしていました。 正直今まで真面目にVB.NETでオブジェクト指向プログラミンをした事がなく、そうなると真面目にクラスを実装したことがありませんでした。 いろいろとその場のノリとか惰性的な何かがありまして…

VB.NETでも等値演算子で文字列を比較したい

言い訳 もしかしたら生粋のVBプログラマなら常識的なことなのかもしれませんが、等値演算子『=』(で呼び方あってますよね?)で文字列を比較するときに空文字とNothingの比較でつまずいたのでそれのメモ。 なんで違う? 以下のC#とVB.NETのコードを見て、実…

Pythonでもオレオレ文字コードを実装したい (4)

使い方 さて、前回はコーデックを実装した状態で終わりましたので今回は実際に使ってみたいと思います。 import jyuch_kana import codecs def main(): fin = codecs.open('text.txt', encoding='jyuch-kana') fout = codecs.open('text2.txt', 'w', encodin…

Pythonでもオレオレ文字コードを実装したい (3)

実装の流れ 自作エンコードをPythonで扱うための実装の手順は以下の感じっぽいです。 7.2. codecs — codec レジストリと基底クラス — Python 3.3.6 ドキュメント エンコーダ・デコーダの実装 エンコーダ・デコーダとcodecsモジュールに含まれているStreamWri…

Pythonでもオレオレ文字コードを実装したい (2)

符号化文字集合と文字符号化方式 符号化文字集合を定義する前に符号化文字集合と文字符号化方式について簡単に触れます。 符号化文字集合 コンピュータで扱う文字を取りまとめ、各文字に一意な符号を割り当てたものです。 ここで注意すべき点は、文字とは特…

Pythonでもオレオレ文字コードを実装したい (1)

やりたいこと 最近の弊社は符号化文字集合や文字符号化方式にとても興味があります。 と言うのも、今まではJavaやC#などの言語がメインでテキストファイルのエンコードスキームなどはそこまで気にしなくても動いていたのですが、Pythonで日本語を扱うように…

IronPythonとShift_JIS

鉄のヘビさん オレオレツールを作った際にCPythonとIronPythonの違いに詰まった時のお話です。 弊社はなんちゃってマカーなので、自宅ではMacを使用しています。 同じPython2.7系だし、基本的に同じコードでMac OS 10.10 + CPython 2.7.6とWindows 8.1 + Iro…