2013年7月9日火曜日

C#でモジュラス43の計算

バーコードのCode39で使うチェックディジットです

  1. private static char[] modulus43CharList =  
  2. {  
  3.     '0','1','2','3','4','5','6','7','8','9',  
  4.     'A','B','C','D','E','F','G','H','I','J',  
  5.     'K','L','M','N','O','P','Q','R','S','T',  
  6.     'U','V','W','X','Y','Z','-','.',' ','$',  
  7.     '/','+','%'  
  8. };  
  9.   
  10. /// <summary>  
  11. /// モジュラス43 計算  
  12. /// CODE39  
  13. /// </summary>  
  14. public static string GetModulus43(string Value)  
  15. {  
  16.     if (!Regex.IsMatch(Value, @"^[A-Z|0-9|\-|.| |$|/|+|%]+$"))  
  17.     {  
  18.         throw new FormatException();  
  19.     }  
  20.   
  21.     long x = 0;  
  22.     for (int i = 0; i < Value.Length; i++)  
  23.     {  
  24.         x += Array.IndexOf(modulus43CharList, Value[i]);  
  25.     }  
  26.   
  27.     return modulus43CharList[x % 43].ToString();  
  28. }  

C#でモジュラス10/ウェイト3の計算

だいぶ前に書いたバーコード作成ソフトのコードを見直してます。
ソースもさらしていきます

JANコードなどで使うチェックディジットです

Modulus10W3コード
  1. /// <summary>  
  2. /// モジュラス10/ウェイト3 計算  
  3. /// JAN8 JAN13 ISBN13 ITF NW-7  
  4. /// </summary>  
  5. public static string GetModulus10Weight3(string Value)  
  6. {  
  7.     if (!Regex.IsMatch(Value, @"^[0-9]+$"))  
  8.     {  
  9.         throw new FormatException();  
  10.     }  
  11.   
  12.     int x = 0;  
  13.     for (int i = 0; i < Value.Length; i++)  
  14.     {  
  15.         x += int.Parse(Value[Value.Length - 1 - i].ToString()) * ((i % 2 == 0) ? 3 : 1);  
  16.     }  
  17.   
  18.     x = (10 - (x % 10)) % 10;  
  19.   
  20.     return x.ToString();  
  21. }  


XMLコメントが入るとおかしくなるなあ
タグが消えたりしてしまう なんでだろう

2013年7月2日火曜日

と思ったんですが

無償のwordpress.comだとbloggerより制限が多いですね。
こっちにもどします。

名前とかデザインを修正

2013年5月29日水曜日

Seri2Key1.3.0.0 更新

Seri2Keyでエゴサーチしてみたら
使用してくれてる方がブログに記事を書いてくれてた。
うれしかったので書かれていた要望点を修正しました。
・特殊コードにALT/CTRL/SHIFTキーを追加
・改行コードが付加されていないデータでも読めるように、改行コードの設定に”なし”を追加
・クリップボードを使用時に入力がソフトによって上手く貼り付けできなかったのを修正
ダウンロード

2013年4月26日金曜日

VisualStudio2012

VisualStudio2010で作ったソリューションをVisualStudio2012で開いた場合、
今までのようにプロジェクトのアップグレードをしなくてもよくなってた。

Visual Studio 2012 の互換性

確認したところ2012で作業後に保存しなおしても2010で開くことができた。
とうぜんだけど2008のソリューションはだめでした
開発で使っている環境がWindows XP/7/8だったためXPに合わせて2010を使ってたけど。
7と8はVisualStudio2012に移行できそうでつ
うれしかったのでさっそくClaudiaIDEを導入

2013年4月20日土曜日

ブログの移行

wordpressを仕事で使いたかったので練習もかねて移行します。
http://komozo.wordpress.com/

ここと同じで数年更新しないかもしれませんが。

2013年4月19日金曜日

ソフトウエア


ブログ書くネタがなかったんで以前に作ったアプリを手直しして公開

RS232Cのデータを取得してキーボード出力するソフトと、1Dバーコードの生成ツールです。