byte []をPointに変換できますか?私はキャンバスを持っていて、図はPoint []として得られています。私はそれをデータベースにbyte []として格納し、それを取り出してPoint []として再度ロードする必要があります。byte []をPoint []に変換して戻す
2
A
答えて
2
あなたはバイトの配列を取得するには、バイナリストリームにあなたのポイントをシリアライズすることができます
byte[] data;
using (var ms = new MemoryStream()) {
using (var bw = new BinaryWriter(ms)) {
bw.Write(points.Length);
foreach (var p in points) {
bw.Write(p.X);
bw.Write(p.Y);
}
}
data = ms.ToArray();
}
プロセスを逆に、バック配列にあなたのバイトをデシリアライズするには:
Point[] points;
using (var ms = new MemoryStream(data)) {
using (var r = new BinaryReader(ms)) {
int len = r.ReadInt32();
points = new Point[len];
for (int i = 0 ; i != len ; i++) {
points[i] = new Point(r.ReadInt32(), r.ReadInt32());
}
}
}
+0
部分を再シリアライズするとき=新しいPoint [len]; System.OverflowExceptionをスローします。 '算術演算の結果、オーバーフローが発生しました。可能な修正は何ができますか? –
関連する問題
- 1. byte []をpdfに変換する、180度回転する、byte []とresponse.outputstreamに戻る
- 2. byte [、]をbyte []に変換する
- 3. byte []をbyteに変換する
- 4. スカラの任意の型を配列[Byte]に変換して戻す
- 5. arraylistオブジェクトをbyte []に変換します
- 6. メモリストリームをByteに変換
- 7. Swig:戻り値の型std :: stringをjava byte []に変換します。
- 8. intをint []とbyte []をbyte [] []に変換するには?
- 9. MySQL POINTデータ型をPosgreSQLに変換
- 10. ロジックを使用してfloatをbyte []に変換するには
- 11. charをbyteに変換するには?
- 12. JNI Java byte []をC++ bytearrayに変換して返す0
- 13. byte []をshort []に変換する
- 14. byte []をfloat []に変換するUnsupportedOperationException
- 15. intを "byte"に変換する
- 16. byte []をBufferedImageに変換する
- 17. base64stringをbyte []に変換する
- 18. DataHandlerをbyte []に変換する
- 19. Go [] byteをC * charに変換する
- 20. byte []をバッファタイプに変換する
- 21. c#system.IO.StreamをByteに変換する
- 22. Javaのbyte []ポインタ変換
- 23. byte []配列をDataTableに変換
- 24. バイト配列を文字列に変換して戻す
- 25. アンドロイドオブジェクトをバイト配列に変換して戻す方法は?
- 26. Java/Android:文字列をバイト[]に変換して浮動して戻す
- 27. System :: Byteのギザギザの配列をunsigned char **に変換します。
- 28. Dapperを使用してbyte []配列をsqldbtype.Varbinaryに変換します
- 29. ArrayList [x] byte []を.toArrayを使用してバイト[]に変換しますか?
- 30. C++/CX IRandomAccessStream ^からバイトに変換して戻す方法(UWP)
'Point'基本的に2つの整数のタプルです。ですから、最初に 'byte []'を 'int'に変換して、それをPointのシリアライズ/デシリアライズに適用します。 – Rob