是一个常见的操作,可以通过以下步骤实现:
以下是一个示例代码(使用C#语言)来将二进制文件读取到List<T>:
using System;
using System.Collections.Generic;
using System.IO;
using System.Runtime.Serialization.Formatters.Binary;
// 定义一个示例对象类型
[Serializable]
public class ExampleObject
{
public int Id { get; set; }
public string Name { get; set; }
}
public class BinaryFileReader<T>
{
public List<T> ReadBinaryFile(string filePath)
{
List<T> objectList = new List<T>();
// 打开二进制文件
using (FileStream fileStream = new FileStream(filePath, FileMode.Open))
{
// 创建二进制序列化器
BinaryFormatter binaryFormatter = new BinaryFormatter();
// 读取二进制数据并解析为对象列表
while (fileStream.Position < fileStream.Length)
{
T obj = (T)binaryFormatter.Deserialize(fileStream);
objectList.Add(obj);
}
}
return objectList;
}
}
// 使用示例
public class Program
{
public static void Main(string[] args)
{
string filePath = "example.bin";
BinaryFileReader<ExampleObject> reader = new BinaryFileReader<ExampleObject>();
List<ExampleObject> objectList = reader.ReadBinaryFile(filePath);
// 对读取到的对象列表进行操作
foreach (ExampleObject obj in objectList)
{
Console.WriteLine($"Id: {obj.Id}, Name: {obj.Name}");
}
}
}
在上述示例代码中,我们定义了一个BinaryFileReader<T>
类,用于读取二进制文件并将解析的对象存储在List<T>
中。ExampleObject
是一个示例对象类型,可以根据实际需求进行修改。在Main
方法中,我们创建了一个BinaryFileReader<ExampleObject>
实例,并使用它来读取二进制文件并操作读取到的对象列表。
请注意,上述示例代码仅为演示目的,实际应用中可能需要根据具体的需求进行适当的修改和优化。
腾讯云相关产品和产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云