예제 #1
0
        private static String serializeProject(InventoryProject project)
        {
            String result = null;

            result = JsonConvert.SerializeObject(project);
            return(result);
        }
예제 #2
0
        private static void writeProjectToCompressedFile(InventoryProject project, String filePath)
        {
            String serializedProject = serializeProject(project);

            using (FileStream fileStream = new FileStream(filePath, FileMode.Create))
            {
                byte[]       inputBytes  = Encoding.UTF8.GetBytes(serializedProject);
                MemoryStream inputStream = new MemoryStream(inputBytes);
                using (GZipStream gZipStream = new GZipStream(fileStream, CompressionMode.Compress))
                {
                    StreamCopyTo(inputStream, gZipStream);
                }
                fileStream.Close();
            }
        }
예제 #3
0
        private static InventoryProject readProjectFromCompressedFile(String filePath)
        {
            InventoryProject result            = null;
            String           serializedProject = null;

            using (FileStream fileStream = new FileStream(filePath, FileMode.Open))
            {
                MemoryStream outputStream = new MemoryStream();
                using (GZipStream gZipStream = new GZipStream(fileStream, CompressionMode.Decompress))
                {
                    StreamCopyTo(gZipStream, outputStream);
                }
                serializedProject = Encoding.UTF8.GetString(outputStream.ToArray());
            }
            if (serializedProject != null)
            {
                result = deserializeProject(serializedProject);
            }
            return(result);
        }
예제 #4
0
 public static void saveProject(InventoryProject project, String filePath)
 {
     writeProjectToCompressedFile(project, filePath);
 }