- Hivatalos a OnePlus 13 startdátuma
- Válságmódban a Samsung mobildivíziója
- Xiaomi 17 Ultra - jó az optikája
- Milyen okostelefont vegyek?
- Vivo X300 Pro – messzebbre lát, mint ameddig bírja
- iPhone topik
- Xiaomi 15T - reakció nélkül nincs egyensúly
- One mobilszolgáltatások
- Xiaomi 14T Pro - teljes a család?
- Honor Magic V5 - méret a kamera mögött
Új hozzászólás Aktív témák
-
DrojDtroll
veterán
válasz
DrojDtroll
#8292
üzenetére
Ezt a problémát megoldottam úgy hogy csináltam egy osztály ami egyetlen color field-et tartalmaz.
Most a serializációval küszködök.
A Class amit el kellene menteni.
using System;
using System.Collections.Generic;
using System.Drawing;
using System.IO;
namespace raw_data
{
[Serializable]
public class ColorPalette : Data.ISeriazable
{
private List<Imaging.RefColor> _colorList;
public string SerializedName { get; set; }
public ColorPalette()
{
ColorList = new List<Imaging.RefColor>();
ColorList.Add(new Imaging.RefColor(Settings.ColorPalette.Default.DefaultMin));
ColorList.Add(new Imaging.RefColor(Settings.ColorPalette.Default.DefaultMax));
SerializedName = Settings.Folder.Default.ColorPalette + Path.AltDirectorySeparatorChar + System.IO.Directory.GetFiles(Settings.Folder.Default.ColorPalette).Length;
}
public List<Imaging.RefColor> ColorList { get => _colorList; set => _colorList = value; }
public Lut lut { get; set; }
public string GetSerializedName()
{
return SerializedName;
}
}
}A serializálást végző függvény:
public static void SerializeObject(Data.ISeriazable obj)
{
IFormatter formatter = new BinaryFormatter();
Stream stream = new FileStream(obj.GetSerializedName(),
FileMode.Create,
FileAccess.Write, FileShare.None);
formatter.Serialize(stream, obj);
stream.Close();
}A visszatöltés metódusa
internal static void LoadSerializedPalettes(GroupBox colorPaletteGroupBox)
{
string[] serializedfilenames=Directory.GetFiles(Settings.Folder.Default.ColorPalette);
foreach (var item in serializedfilenames)
{
IFormatter formatter = new BinaryFormatter();
Stream stream = new FileStream(item,
FileMode.Open,
FileAccess.Read,
FileShare.Read);
ColorPalette cp = (ColorPalette)formatter.Deserialize(stream);
stream.Close();
ColorPaletteSettings.ColorPaletteList.Add(cp);
AddNewPalatte(colorPaletteGroupBox, cp);
}
}Nem töltődnek rendesen vissza az objektumok. A stream még rendesen megvan. Debugban látom, hogy a hossza olyan mint amilyennek lennie kell.
Mitől lehet, hogy mégis null-t kapok?
Új hozzászólás Aktív témák
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Hivatalos a OnePlus 13 startdátuma
- Válságmódban a Samsung mobildivíziója
- Samsung Galaxy Felhasználók OFF topicja
- Jövedelem
- PlayStation 5
- AMD Ryzen 9 / 7 / 5 / 3 5***(X) "Zen 3" (AM4)
- Okos otthon - Home Assistant, openHAB és más nyílt rendszerek
- Crimson Desert
- Apple MacBook
- Xiaomi 17 Ultra - jó az optikája
- További aktív témák...
- GIGABYTE GS27QCA VA Gaming Monitor! 2560x1440 / 180Hz / 1ms / FreeSync
- ASUS VA27EHF IPS Monitor! 1920x1080 / 100Hz / 1ms / FreeSync
- P15v Gen3 27% 15.6" FHD IPS érintő i7-12800H NVIDIA T600 32GB 512GB NVMe ujjlolv gar
- Acer CBA272H VA Monitor! 1920 1080 / 100Hz / 4ms / FreeSync
- ASUS VY229HF IPS Gaming Monitor! 1920x1080 / 100Hz / 1ms / FreeSync
- Értékcsökkentett gamer alaplapok /ASUS/MSI/AM5/Számlával/
- LG UltraGear Gaming Monitorok : UPDATE! 03.13!
- Akció! Apple iMac 19.2 i5-8500 Radeon Pro 560X 4GB 16GB 256GB SSD 21.5" 4K Retina
- Apple iPhone 12 64GB - Kártyafüggetlen, Fekete, 91% Akku - 1 Év Garanciával
- Apple iPhone 14 Plus 128GB, Kártyafüggetlen, 1 Év Garanciával
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Mitől lehet, hogy mégis null-t kapok?
