示例#1
0
        /// <summary>
        ///     Fired when a new CSV file is created.
        /// </summary>
        private protected override void OnNewFile(object eventSource, FileSystemEventArgs e)
        {
            string filePath = e.FullPath;

            IEnumerable <Computer> computerAssets = ReadNewDataFile(filePath).ToList();

            FileRead?.Invoke(computerAssets);
        }
示例#2
0
        public static byte[] ReadAllBytes(string path)
        {
            string[] pathlist = path.Split('/');
            int      vol      = Convert.ToInt32(pathlist[0].Replace(":", ""));
            var      dir      = Mounts[vol];

            for (int i = 1; i <= pathlist.Length - 2; i++)
            {
                dir = dir.FindDirectoryByName(pathlist[i]);
            }
            var file = dir.FindFileByName(pathlist[pathlist.Length - 1]);

            FileRead?.Invoke(path);
            return(file.Data);
        }
示例#3
0
        private T DeserializeObject <T>(T fileFormat, string path)
        {
            var jsonFormatter = new DataContractJsonSerializer(typeof(T));

            using (var file = new FileStream(path, FileMode.OpenOrCreate))
            {
                fileFormat = (T)jsonFormatter.ReadObject(file);
                FileRead?.Invoke();

                for (int i = 0; i < 3000; i += 1000)
                {
                    Thread.Sleep(i);
                    Console.Write(".");
                }

                return(fileFormat);
            }
        }
示例#4
0
        public async Task <bool> ReadInFolderAsync()
        {
            Debug.Assert(IsDeWrapper && IsInitSucceed);
            var folders = (await TmpFolder.GetFoldersAsync())
                          .Where(folder => folder.DisplayName == InkStrokesFolderName)
                          .ToList();

            if (folders.Count != 0)
            {
                var folder = folders[0];
                var files  = (await folder.GetFilesAsync()).Where(f => f.FileType.ToLower() == ".isf");
                foreach (var file in files)
                {
                    var ic       = new InkCanvas();
                    var filename = file.Name.Substring(0, file.Name.Length - 4);
                    using (var fs = await file.OpenAsync(FileAccessMode.ReadWrite))
                    {
                        await ic.InkPresenter.StrokeContainer.LoadAsync(fs);
                    }
                    var strokes  = ic.InkPresenter.StrokeContainer.GetStrokes().ToList();
                    var gslength = Enum.GetValues(typeof(GraphicsTypes)).Length;
                    var layer    = new LayerModel();
                    foreach (var stroke in strokes)
                    {
                        var gi = stroke.StrokeDuration.Value.Ticks;
                        if (gi > 0 && gi < gslength)
                        {
                            var gr = (GraphicsRectSizeBase)GraphicsInstCreateManager.CreateGraphics((GraphicsTypes)gi, layer.LocPenModel, layer, layer);
                            Debug.Assert(gr != null);
                            stroke.GetInkPoints().ToList().ForEach(p => gr.Points.Add(p));
                            gr.PenAttribute = PenModel.ToPenModel(stroke.DrawingAttributes);
                            layer.GraphicsRects.Add(gr);
                        }
                    }
                    layer.Name       = filename;
                    layer.CanvasSize = CanvasSize;
                    FileRead?.Invoke(this);
                    Layers.Add(layer);
                }
                return(true);
            }
            return(false);
        }