private static void ExtractData(LiteFileInfo file, out LibGit2Sharp.ObjectId oid, out int length, out ObjectType objectType) { using (var reader = new BinaryReader(file.OpenRead())) { oid = new LibGit2Sharp.ObjectId(reader.ReadString()); objectType = (ObjectType)reader.ReadInt32(); length = reader.ReadInt32(); } }
public void LoadFile(LiteFileInfo file) { var textRegex = new Regex("text|json|script|xml"); if (file.MimeType.StartsWith("image")) { using (var fStream = file.OpenRead()) { var stream = new MemoryStream(); fStream.CopyTo(stream); stream.Seek(0, SeekOrigin.Begin); var bitmap = new BitmapImage(); bitmap.BeginInit(); bitmap.StreamSource = stream; bitmap.CacheOption = BitmapCacheOption.OnLoad; bitmap.EndInit(); bitmap.Freeze(); ImageImage.Source = bitmap; ImageImage.Visibility = Visibility.Visible; TextText.Visibility = Visibility.Collapsed; } } else if (textRegex.IsMatch(file.MimeType)) { using (var fileStream = file.OpenRead()) { using (var reader = new StreamReader(fileStream)) { var myStr = reader.ReadToEnd(); TextText.Text = myStr; TextText.Visibility = Visibility.Visible; ImageImage.Visibility = Visibility.Collapsed; } } } }
private void ExtractData(LiteFileInfo file, out LibGit2Sharp.ObjectId oid, out UnmanagedMemoryStream data, out ObjectType objectType) { using (var reader = new BinaryReader(file.OpenRead())) { oid = new LibGit2Sharp.ObjectId(reader.ReadString()); objectType = (ObjectType)reader.ReadInt32(); var length = reader.ReadInt32(); var bytes = reader.ReadBytes(length); data = AllocateAndBuildFrom(bytes); // Update last item _lastItem = new StoreItem(oid.Sha, objectType, bytes); } }
private XElement ReadElementFromFile(LiteFileInfo fileInfo) { using (var fileStream = fileInfo.OpenRead()) { try { return(XElement.Load(fileStream)); } catch (XmlException e) { var logger = LoggerFactory?.CreateLogger <LiteDbXmlStorage>(); logger?.LogError($"The key file '{fileInfo.Filename}' is corrupted.\nSee details:\n{e}"); return(null); } } }
public static TFile ToStorageFile <TFile>(this LiteFileInfo fileInfo) where TFile : class, IStorageFile, new() { TFile file = new TFile { Id = fileInfo.Id }; // Read using (LiteFileStream fs = fileInfo.OpenRead()) using (MemoryStream ms = new MemoryStream()) { fs.CopyTo(ms); file.Content = ms.ToArray(); } return(file); }
private void DownloadFile(LiteFileInfo file, Stream outStream) { using (var fileStream = file.OpenRead()) { if (fileStream.Length > file.Length) { fileStream.SetLength(file.Length); } if (_compress) { using (var deflate = new DeflateStream(outStream, CompressionMode.Decompress)) { deflate.CopyTo(outStream); } } else { fileStream.CopyTo(outStream); } } }