C# BinaryReader.ReadUInt64的代码示例
通过代码示例来学习C# BinaryReader.ReadUInt64方法
通过代码示例来学习编程是非常高效的。
1. 代码示例提供了一个具体而直观的学习环境,使初学者能够立即看到编程概念和语法的实际应用。
2. 通过分析和模仿现有的代码实例,初学者可以更好地理解编程逻辑和算法的工作原理。
3. 代码实例往往涵盖了多种编程技巧和最佳实践,通过学习和模仿这些实例,学习者可以逐步掌握如何编写高效、可读性强和可维护的代码。这对于初学者来说,是一种快速提升编程水平的有效途径。
BinaryReader.ReadUInt64是C#的System.IO命名空间下中的一个方法, 小编为大家找了一些网络大拿们常见的代码示例,源码中的BinaryReader.ReadUInt64() 已经帮大家高亮显示了,大家可以重点学习BinaryReader.ReadUInt64() 方法的写法,从而快速掌握该方法的应用。
BinaryReader.ReadUInt64的代码示例1 - ETC1Decompress()
using System.IO; public static byte[] ETC1Decompress(byte[] Input, int Width, int Height, bool Alpha) { byte[] Output = new byte[Width * Height * 4]; using (MemoryStream MS = new MemoryStream(Input)) { BinaryReader Reader = new BinaryReader(MS); for (int TY = 0; TY < Height; TY += 8) { for (int TX = 0; TX < Width; TX += 8) { for (int T = 0; T < 4; T++) { ulong AlphaBlock = 0xfffffffffffffffful; if (Alpha) AlphaBlock = Reader.ReadUInt64(); ulong ColorBlock = Swap64(Reader.ReadUInt64()); byte[] Tile = ETC1Tile(ColorBlock); int TileOffset = 0; for (int PY = YT[T]; PY < 4 + YT[T]; PY++) { for (int PX = XT[T]; PX < 4 + XT[T]; PX++) { int OOffs = ((Height - 1 - (TY + PY)) * Width + TX + PX) * 4; Buffer.BlockCopy(Tile, TileOffset, Output, OOffs, 3); int AlphaShift = ((PX & 3) * 4 + (PY & 3)) << 2; byte A = (byte)((AlphaBlock >> AlphaShift) & 0xf); Output[OOffs + 3] = (byte)((A << 4) | A); TileOffset += 4; } } } } } return Output; } }
开发者ID:KillzXGaming,项目名称:Switch-Toolbox,代码行数:50,代码来源:ETC1.cs
在ETC1Decompress()方法中,BinaryReader的代码示例类中的ReadUInt64的代码示例方法一共出现了2次, 见黄色背景高亮显示的地方,欢迎大家点赞
BinaryReader.ReadUInt64的代码示例2 - InitializeHashCache()
using System.IO; public static void InitializeHashCache() { HashBinaryPath = Path.Combine(Runtime.ExecutableDir, "Hashes", "GFPAKHashCache.bin"); string HashExtraPath = Path.Combine(Runtime.ExecutableDir, "Hashes", "GFPAK.txt"); bool NeedsBaseCacheRebuild = true; CurrentVersionHash = GetToolboxVersionHash(); if (File.Exists(HashBinaryPath)) { using (BinaryReader Reader = new BinaryReader(new FileStream(HashBinaryPath, FileMode.Open))) { ulong CacheVersionHash = Reader.ReadUInt64(); NeedsBaseCacheRebuild = CacheVersionHash != CurrentVersionHash; uint Count = Reader.ReadUInt32(); for (uint HashIndex = 0; HashIndex < Count; HashIndex++) { ulong HashCode = Reader.ReadUInt64(); string HashName = Reader.ReadString(); PutHash(HashCode, HashName); } } } if (NeedsBaseCacheRebuild) { GenerateBaseHashList(); } if (File.Exists(HashExtraPath)) { string[] UserHashLines = File.ReadAllLines(HashExtraPath); foreach (string Line in UserHashLines){ PutHash(Line); } } WriteCache(); }
开发者ID:KillzXGaming,项目名称:Switch-Toolbox,代码行数:41,代码来源:GFPAKHashCache.cs
在InitializeHashCache()方法中,BinaryReader的代码示例类中的ReadUInt64的代码示例方法一共出现了2次, 见黄色背景高亮显示的地方,欢迎大家点赞
BinaryReader.ReadUInt64的代码示例3 - ReadAttributeValue()
using System.IO; //internal static object ReadPrimativTypeValue( BinaryReader reader , DCILElementType type , out bool isPrimativeType ) //{ // switch (type) // { // case DCILElementType.Boolean: isPrimativeType = true; return reader.ReadByte() == 1; // case DCILElementType.I1: isPrimativeType = true; return (sbyte)reader.ReadByte(); // case DCILElementType.U1: isPrimativeType = true; return reader.ReadByte(); // case DCILElementType.Char: isPrimativeType = true; return (char)reader.ReadInt16(); // case DCILElementType.I2: isPrimativeType = true; return reader.ReadInt16(); // case DCILElementType.U2: isPrimativeType = true; return reader.ReadUInt16(); // case DCILElementType.I4: isPrimativeType = true; return reader.ReadInt32(); // case DCILElementType.U4: isPrimativeType = true; return reader.ReadUInt32(); // case DCILElementType.I8: isPrimativeType = true; return reader.ReadInt64(); // case DCILElementType.U8: isPrimativeType = true; return reader.ReadUInt64(); // case DCILElementType.R4: isPrimativeType = true; return reader.ReadSingle(); // case DCILElementType.R8: isPrimativeType = true; return reader.ReadDouble(); // case DCILElementType.String: isPrimativeType = true; return ReadUTF8String(reader); // case DCILElementType.Type: isPrimativeType = true; return ReadUTF8String(reader); // default: // isPrimativeType = false; // return null; // } //} protected static object ReadAttributeValue(ReadCustomAttributeValueArgs args, DCILElementType type) { switch (type) { case DCILElementType.Boolean: return args.Reader.ReadByte() == 1; case DCILElementType.I1: return (sbyte)args.Reader.ReadByte(); case DCILElementType.U1: return args.Reader.ReadByte(); case DCILElementType.Char: return (char)args.Reader.ReadInt16(); case DCILElementType.I2: return args.Reader.ReadInt16(); case DCILElementType.U2: return args.Reader.ReadUInt16(); case DCILElementType.I4: return args.Reader.ReadInt32(); case DCILElementType.U4: return args.Reader.ReadUInt32(); case DCILElementType.I8: return args.Reader.ReadInt64(); case DCILElementType.U8: return args.Reader.ReadUInt64(); case DCILElementType.R4: return args.Reader.ReadSingle(); case DCILElementType.R8: return args.Reader.ReadDouble(); case DCILElementType.String: return DCUtils.GetStringUseTable( ReadUTF8String(args.Reader)); case DCILElementType.Enum: return args.Reader.ReadInt32(); case DCILElementType.Type: return new TypeRefInfo(args); case DCILElementType.Object: return new PackageValueInfo(args); default: throw new NotSupportedException(type.ToString()); } return null; }
开发者ID:dcsoft-yyf,项目名称:JIEJIE.NET,代码行数:52,代码来源:DCILCustomAttributeValue.cs
在ReadAttributeValue()方法中,BinaryReader的代码示例类中的ReadUInt64的代码示例方法一共出现了2次, 见黄色背景高亮显示的地方,欢迎大家点赞
BinaryReader.ReadUInt64的代码示例4 - ReadHeader()
using System.IO; private static CompoundHeader ReadHeader(BinaryReader reader) { var result = new CompoundHeader(); result.Signature = reader.ReadUInt64(); result.ClassId = new Guid(reader.ReadBytes(16)); result.Version = reader.ReadUInt16(); result.DllVersion = reader.ReadUInt16(); result.ByteOrder = reader.ReadUInt16(); result.SectorSizeInPot = reader.ReadUInt16(); result.MiniSectorSizeInPot = reader.ReadUInt16(); reader.ReadBytes(6); // skip 6 unused bytes result.DirectorySectorCount = reader.ReadInt32(); result.FatSectorCount = reader.ReadInt32(); result.RootDirectoryEntryStart = reader.ReadUInt32(); result.TransactionSignature = reader.ReadUInt32(); result.MiniStreamCutoff = reader.ReadUInt32(); result.MiniFatFirstSector = reader.ReadUInt32(); result.MiniFatSectorCount = reader.ReadInt32(); result.DifFirstSector = reader.ReadUInt32(); result.DifSectorCount = reader.ReadInt32(); var chain = new List
(); for (int i = 0; i < 109; ++i) { chain.Add(reader.ReadUInt32()); } result.First109DifSectorChain = chain; return result; }
开发者ID:ExcelDataReader,项目名称:ExcelDataReader,代码行数:33,代码来源:CompoundDocument.cs
在ReadHeader()方法中,BinaryReader的代码示例类中的ReadUInt64的代码示例方法一共出现了1次, 见黄色背景高亮显示的地方,欢迎大家点赞
本文中的BinaryReader.ReadUInt64方法示例由csref.cn整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。