Hello Peeps. Came across this topic while doing our game saving data feature.
this post only cover basic serialization.
basically serialization help us to convert our object into stream of bytes so that our object can be stored or transmit over in memory/file/database.
before we can proceed with the serialization tutorial, we need to set the user permission to our target folder path.
1. Set the folder path to be accessible and can be override. This step is to avoid our program/apps from throwing unauthorizedaccessexception.
- for my scenario, im choosing the path of D:\SelfLearning\c#\Serialization to store my data file.
2. Now we are going to write our code. First we need to setup our folder path.
3. We going to create our file. In this tutorial we are using FileStream type, other then FileStream, we can make use of MemoryStream if we wishes to store the serialized object into in memory space not into a file.
4. We instantiate our DataObjectSerializable instance. before doing that, we need to create a class that allows its object to be serialized. in this tutorial we will create a DataObjectSerializable .class, it contains name and age fields.
5. Serialized the instance to our filestream. We are using binaryformatter means that we want to serialize our object in binary form. .Net framework also allow serialization in SOAP format. after we have serialized our object dont forget to close the stream object in order to close the file and release any resources that are using the file.
9. Happy Coding! hope this helps.
You may refer the full code in my github repo :
https://github.com/aliaramli/c-tutorials/tree/master/Serialization/SerializationExample/SerializationExample
All feedback are most welcome.
references :
http://stackoverflow.com/questions/27555770/error-an-unhandled-exception-of-type-system-unauthorizedaccessexception-occur
https://msdn.microsoft.com/en-us/library/ms233843.aspx
https://msdn.microsoft.com/en-us/library/b9skfh7s%28v=vs.110%29.aspx
https://msdn.microsoft.com/en-us/library/system.runtime.serialization.formatters.binary(v=vs.110).aspx
https://msdn.microsoft.com/en-us/library/aa328800%28v=vs.71%29.aspx
this post only cover basic serialization.
basically serialization help us to convert our object into stream of bytes so that our object can be stored or transmit over in memory/file/database.
before we can proceed with the serialization tutorial, we need to set the user permission to our target folder path.
1. Set the folder path to be accessible and can be override. This step is to avoid our program/apps from throwing unauthorizedaccessexception.
- for my scenario, im choosing the path of D:\SelfLearning\c#\Serialization to store my data file.
Right click the target folder, select on Security tab |
Select on Users and give full control or modify permission to the user. |
3. We going to create our file. In this tutorial we are using FileStream type, other then FileStream, we can make use of MemoryStream if we wishes to store the serialized object into in memory space not into a file.
4. We instantiate our DataObjectSerializable instance. before doing that, we need to create a class that allows its object to be serialized. in this tutorial we will create a DataObjectSerializable .class, it contains name and age fields.
set the name and age of our dataobject. |
5. Serialized the instance to our filestream. We are using binaryformatter means that we want to serialize our object in binary form. .Net framework also allow serialization in SOAP format. after we have serialized our object dont forget to close the stream object in order to close the file and release any resources that are using the file.
6. Run our application.
7. Note that we managed to create our data file.
8. Our file content. contains unreadable characters and readable character. This can conclude serialization only is not sufficient for secured data storage. In next tutorial i ll share on deserialization , encrpytion and decryption.
9. Happy Coding! hope this helps.
You may refer the full code in my github repo :
https://github.com/aliaramli/c-tutorials/tree/master/Serialization/SerializationExample/SerializationExample
All feedback are most welcome.
references :
http://stackoverflow.com/questions/27555770/error-an-unhandled-exception-of-type-system-unauthorizedaccessexception-occur
https://msdn.microsoft.com/en-us/library/ms233843.aspx
https://msdn.microsoft.com/en-us/library/b9skfh7s%28v=vs.110%29.aspx
https://msdn.microsoft.com/en-us/library/system.runtime.serialization.formatters.binary(v=vs.110).aspx
https://msdn.microsoft.com/en-us/library/aa328800%28v=vs.71%29.aspx
Comments
Post a Comment