protected override void OnNavigatedTo(NavigationEventArgs e)
        {
            var clipItem = (ClippingItem)e.Parameter;

            this.clipItem = clipItem;

            LoadBookInfo();
        }
Esempio n. 2
0
        private async Task <List <ClippingItem> > FileParser(StorageFile file)
        {
            List <ClippingItem> clipItems = new List <ClippingItem>();

            using (var inputStream = await file.OpenReadAsync())
                using (var classicStream = inputStream.AsStreamForRead())
                    using (var streamReader = new StreamReader(classicStream)) {
                        int          currentLine = 1;
                        ClippingItem clipItem    = new ClippingItem();

                        while (streamReader.Peek() >= 0)
                        {
                            var line = streamReader.ReadLine();
                            switch (currentLine % 5)
                            {
                            case 1:
                                clipItem = new ClippingItem();
                                var result = line.Split(' ');
                                clipItem.Title  = result.First();
                                clipItem.Author = result.Last();
                                break;

                            case 2:
                                var locationRegex = new Regex(@"Location (\d+-\d+)");
                                clipItem.Location = locationRegex.Match(line).Value;
                                var dateTimeRegex  = new Regex(@"(20.*) [A|P]M");
                                var thatTimeString = dateTimeRegex.Match(line).Value;
                                Debug.WriteLine(thatTimeString);
                                // clipItem.createdAt = DateTime.Parse(thatTimeString);
                                break;

                            case 4:
                                clipItem.Content = line;
                                break;

                            case 0:
                                clipItems.Add(clipItem);
                                break;
                            }
                            currentLine++;
                        }
                    }
            clipItems.ForEach(i => i.DataId = Encrypt.Sha256(i.Content + i.Location));
            return(clipItems);
        }