3
我有一个窗体与datagridview,我正在读取列表中的特定列值。我需要在单个内存映射文件中共享列表的所有值,但以下是我所关心的: 1.以字节为单位查找列表大小。 2.需要共享列表的所有项目。如何共享内存映射文件中的列表值
这里是我正在共享的单一变量的值我的示例代码:
string MyName = "Seema";
int totalBytes = MyName.Length * sizeof(Char) + 4;
public List<string> myList = new List<string>();
MemoryMappedFile MyText = MemoryMappedFile.CreateOrOpen("MyGlobalData", howManyBytes);
byte[] array1 = new byte[howManyBytes];
array1 = GetBytes(Name);
using (var accessor = MyText.CreateViewAccessor(0, array1.Length))
{
accessor.WriteArray(0, array1, 0, array1.Length);
}
static byte[] GetBytes(string str)
{
byte[] bytes = new byte[str.Length * sizeof(char)];
System.Buffer.BlockCopy(str.ToCharArray(), 0, bytes, 0, bytes.Length);
return bytes;
}
承担mylsit有项目1.苹果2.芒果菠萝3
请指导我如何着手以上代码
使用众多序列化程序(XML,JSON,binary,...)中的一种来创建要共享的数据比自己重新创建数据要容易得多...您能否通过手动写出每个数据来澄清您试图实现的目标元件? – 2014-12-01 16:25:07
只是好奇,为什么你使用内存映射文件?你是否与其他流程沟通? – RenniePet 2014-12-13 00:39:31