FC2ブログ

三角端。

Δ-sphere管理人三角区也による絵日記/ゲーム開発日記。コメントは右側のweb拍手からどぞー。

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

C#って

C#って機能が最初から色々あって便利ですね。

だけど、便利だけどなんかモヤモヤ。

バイナリの入出力がしにくい。
BinaryStream?いやそんなことよりも構造体をmemcpyさせろよと思ってしまいます。

例のデータベース生成ツールができてきて、
ゲームへの受け渡しのためのバイナリフォーマットを作っていたんですよ。
memcpyがないのでいちいち変数をWriteしていきました。
もうこれだけでめんどくせえ・・・って思ってしまってやる気がそがれていきます。

要素をひとつひとつWriteして、ようやく終わったところでテスト、失敗。
何が悪いんでしょうねえ・・・どうやらWrite(string)が悪い模様。
どうも日本語を出力したときにバッファのサイズが安定しない。
どうやらUTF-8になる模様。
でも、マウスオーバーしたときに表示されるヘルプにはUnicodeうんたら。

バイナリサイズの計算がめんどくさいのでUnicodeにしたいんですが、
string.ToArray(),stringToCharArray()を使ってもUTF-8で出力されるみたいで・・・
でも、マウスオーバーしたときに表示されるヘルプにはUnicodeうんたら。

どうしたもんかなと色々調べているとBinaryWriterのコンストラクタにエンコード指定がありましたよ・・・

せめてヘルプくらい正しくして欲しいですね・・・
あとコンストラクタじゃなくて、Write関数自体にエンコード指定があったらなと思いました。



C#でもmemcpyっぽいことはできます。
が、色々手順がめんどいのでC++みたいにサクッとはいかないですねえ・・・
これに関しては安全性の面から仕方の無いことかもしれませんが。
スポンサーサイト

FC2Ad

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。