C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[11]: Fontのシリアライズ、デシリアライズ


(過去ログ 25 を表示中)

[トピック内 13 記事 (1 - 13 表示)]  << 0 >>

■11142 / inTopicNo.1)  Fontのシリアライズ、デシリアライズ
  
□投稿者/ 倉田 有大 (81回)-(2007/12/07(Fri) 19:03:12)

分類:[C#] 

ぐぐると、TypeConverter.ConvertFromString を使うと書いてあるんですが。
更に調べてみると、.NetFrameWork3.0から使えるみたいなんですね。
更に更に調べてみると、それの開発環境は
http://www.microsoft.com/downloads/details.aspx?FamilyId=5D61409E-1FA3-48CF-8023-E8F38E709BA6&displaylang=ja
↑を使ってくださいとこと。
おいおい、俺はフォントをシリアライズ、デシリアライズしたいだけなんじゃああああ!!
と、叫びたいところなんですが、.NetFrameWork3.0に行くしかないんでしょうか?^^;
開発環境が英語版ということもあり、移行するのをためらっています。ユーザーにも3.0をインストールしてもらう
必要がありますし。
それとも、2.0のままFontをシリアライズ、デシリアライズする方法はあるのでしょうか?
よろしくお願いします
引用返信 編集キー/
■11144 / inTopicNo.2)  Re[1]: Fontのシリアライズ、デシリアライズ
□投稿者/ れい (276回)-(2007/12/07(Fri) 19:07:07)
No11142 (倉田 有大 さん) に返信
> それとも、2.0のままFontをシリアライズ、デシリアライズする方法はあるのでしょうか?

どうシリアライズ/デシリアライズしたいのですか?
シリアライズってSerialにできればなんでもシリアル化なので…。

引用返信 編集キー/
■11145 / inTopicNo.3)  Re[2]: Fontのシリアライズ、デシリアライズ
□投稿者/ 倉田 有大 (82回)-(2007/12/07(Fri) 19:19:20)
No11144 (れい さん) に返信
> ■No11142 (倉田 有大 さん) に返信
>>それとも、2.0のままFontをシリアライズ、デシリアライズする方法はあるのでしょうか?
>
> どうシリアライズ/デシリアライズしたいのですか?
> シリアライズってSerialにできればなんでもシリアル化なので…。

お返事ありがとうございます。

SoapFormatter formatter = new SoapFormatter();
using (Stream stream = new FileStream(path, FileMode.OpenOrCreate))
{
formatter.Serialize(stream, testClass);
}

こんな感じです。
SoapFormatterを使って、クラスのフィールドまとめて保存を行いたいのです。
昔はiniファイルいじってましたが、こっちはうまくいくと楽ですねほんと。
引用返信 編集キー/
■11148 / inTopicNo.4)  Re[3]: Fontのシリアライズ、デシリアライズ
□投稿者/ 倉田 有大 (83回)-(2007/12/07(Fri) 19:43:06)
> SoapFormatter formatter = new SoapFormatter();
> using (Stream stream = new FileStream(path, FileMode.OpenOrCreate))
> {
> formatter.Serialize(stream, testClass);
> }
>
> こんな感じです。
> SoapFormatterを使って、クラスのフィールドまとめて保存を行いたいのです。
> 昔はiniファイルいじってましたが、こっちはうまくいくと楽ですねほんと。

追記。
testClassの中のフィールドにFontがあります。
引用返信 編集キー/
■11149 / inTopicNo.5)  Re[4]: Fontのシリアライズ、デシリアライズ
□投稿者/ れい (278回)-(2007/12/07(Fri) 19:58:58)
昔なんか苦労した覚えがあります。
思い出そうと、今やってみたんですが、普通にできました。
あれれ?
引用返信 編集キー/
■11150 / inTopicNo.6)  Re[5]: Fontのシリアライズ、デシリアライズ
□投稿者/ 倉田 有大 (84回)-(2007/12/07(Fri) 20:01:42)
No11149 (れい さん) に返信
> 昔なんか苦労した覚えがあります。
> 思い出そうと、今やってみたんですが、普通にできました。
> あれれ?

えええ!!!!????
昔、Fontのシリアライズ、デシリアライズしたら、見事にエラーが出てあきらめたんですが。
れいさんの環境は、NetFrameWork2.0でしょうか?
引用返信 編集キー/
■11151 / inTopicNo.7)  Re[6]: Fontのシリアライズ、デシリアライズ
□投稿者/ 倉田 有大 (85回)-(2007/12/07(Fri) 20:14:37)
No11150 (倉田 有大 さん) に返信
> ■No11149 (れい さん) に返信
>>昔なんか苦労した覚えがあります。
>>思い出そうと、今やってみたんですが、普通にできました。
>>あれれ?
>
> えええ!!!!????
> 昔、Fontのシリアライズ、デシリアライズしたら、見事にエラーが出てあきらめたんですが。
> れいさんの環境は、NetFrameWork2.0でしょうか?

あれ、ちょっとまって、本当だ普通に出来るw
エラーでないw
引用返信 編集キー/
■11152 / inTopicNo.8)  Re[6]: Fontのシリアライズ、デシリアライズ
□投稿者/ カンタービレ (120回)-(2007/12/07(Fri) 20:15:54)
No11150 (倉田 有大 さん) に返信
> ■No11149 (れい さん) に返信
>>昔なんか苦労した覚えがあります。
>>思い出そうと、今やってみたんですが、普通にできました。
>>あれれ?
> 
> えええ!!!!????
> 昔、Fontのシリアライズ、デシリアライズしたら、見事にエラーが出てあきらめたんですが。
> れいさんの環境は、NetFrameWork2.0でしょうか?

C#(VS2005)
    [Serializable()]class includeFontClass
    {
        public System.Drawing.Font sFont;
        public includeFontClass()
        {
            sFont = new System.Drawing.Font("みそ字", 9);
        }
    }
//---
// 呼び出し部分
//---
            includeFontClass testClass = new includeFontClass();
            SoapFormatter formatter = new SoapFormatter();
            using (System.IO.Stream stream = new FileStream(path, FileMode.OpenOrCreate))
            {
                formatter.Serialize(stream, testClass);
            }
//---
// 出力内容
//---
<SOAP-ENV:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:clr="http://schemas.microsoft.com/soap/encoding/clr/1.0" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Body>
<a1:testClass id="ref-1" xmlns:a1="http://schemas.microsoft.com/clr/nsassem/combinaCS/combinaCS%2C%20Version%3D1.0.0.0%2C%20Culture%3Dneutral%2C%20PublicKeyToken%3Dnull">
<sFont href="#ref-4"/>
</a1:testClass>
<a2:Font id="ref-4" xmlns:a2="http://schemas.microsoft.com/clr/nsassem/System.Drawing/System.Drawing%2C%20Version%3D2.0.0.0%2C%20Culture%3Dneutral%2C%20PublicKeyToken%3Db03f5f7f11d50a3a">
<Name id="ref-5">みそ字</Name>
<Size>9</Size>
<Style xsi:type="a2:FontStyle" xmlns:a2="http://schemas.microsoft.com/clr/nsassem/System.Drawing/System.Drawing%2C%20Version%3D2.0.0.0%2C%20Culture%3Dneutral%2C%20PublicKeyToken%3Db03f5f7f11d50a3a">Regular</Style>
<Unit xsi:type="a2:GraphicsUnit" xmlns:a2="http://schemas.microsoft.com/clr/nsassem/System.Drawing/System.Drawing%2C%20Version%3D2.0.0.0%2C%20Culture%3Dneutral%2C%20PublicKeyToken%3Db03f5f7f11d50a3a">Point</Unit>
</a2:Font>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

出来マスね。

引用返信 編集キー/
■11153 / inTopicNo.9)  Re[7]: Fontのシリアライズ、デシリアライズ
□投稿者/ れい (279回)-(2007/12/07(Fri) 20:18:44)
みそ字!!
引用返信 編集キー/
■11155 / inTopicNo.10)  Re[8]: Fontのシリアライズ、デシリアライズ
□投稿者/ 倉田 有大 (86回)-(2007/12/07(Fri) 20:22:24)
カンタービレさん、れいさんありがとうございます。
出来ますねw
いや、何時の間にできるようになったんですかこれ^^;
ぐぐっても、TypeConverter.ConvertFromString使えと書いてあったので、いまだに出来ないものだとばかりおもってました^^;
ついでにColorクラスもできますね。なんじゃこりゃ。いや、もちろんいいことなんですが。

解決済み
引用返信 編集キー/
■11166 / inTopicNo.11)  Re[9]: Fontのシリアライズ、デシリアライズ
□投稿者/ Hongliang (214回)-(2007/12/08(Sat) 00:25:13)
Hongliang さんの Web サイト
単純にはできないのは XML シリアライズです。
引用返信 編集キー/
■11170 / inTopicNo.12)  Re[10]: Fontのシリアライズ、デシリアライズ
□投稿者/ れい (280回)-(2007/12/08(Sat) 06:31:56)
No11166 (Hongliang さん) に返信
> 単純にはできないのは XML シリアライズです。

コンストラクタが無いのでXMLシリアライズがめんどくさいのはわかってるんですが、
そうではなく。
.Net1.0だか1.1だか2.0なのか忘れましたが、
昔はFontのSoap/Binaryシリアル化はできなかった気がします。
苦労した覚えがあります。
実際Webにもいくつかそんな話がありますし。

いつから変わったんだろう。
私の様なモグリではダメですね。
これは常に最新動向を追いかけてる意識の高い方に
お出ましいただかないと。

教えて!偉い人!
引用返信 編集キー/
■11172 / inTopicNo.13)  Re[11]: Fontのシリアライズ、デシリアライズ
□投稿者/ カンタービレ (122回)-(2007/12/08(Sat) 10:15:55)
No11170 (れい さん) に返信
> ■No11166 (Hongliang さん) に返信
>>単純にはできないのは XML シリアライズです。
>
> コンストラクタが無いのでXMLシリアライズがめんどくさいのはわかってるんですが、
> そうではなく。
> .Net1.0だか1.1だか2.0なのか忘れましたが、
> 昔はFontのSoap/Binaryシリアル化はできなかった気がします。
> 苦労した覚えがあります。
> 実際Webにもいくつかそんな話がありますし。
>
> いつから変わったんだろう。
> 私の様なモグリではダメですね。
> これは常に最新動向を追いかけてる意識の高い方に
> お出ましいただかないと。
>
> 教えて!偉い人!

エロくないデスけど、
http://www.microsoft.com/japan/msdn/netframework/programming/breakingchanges/runtime/xmlserial.aspx
に変更点がいくつか掲載されていマス。
MarshalByRefObjectを継承するFontクラスに変更点があったかどうかはワカリマセン。
マイグレーションで調べた時に「へぇ〜」って思った記憶がありマス。
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -