public void ConvertMessageSelect(string path) { List <string> lineList = this.getLineList(path); FlatBuffers.FlatBufferBuilder fbb = new FlatBuffers.FlatBufferBuilder(1); FlatBuffers.Offset <MessageSelectTable.Data>[] data = new FlatBuffers.Offset <MessageSelectTable.Data> [lineList.Count]; int count = 0; foreach (string line in lineList) { string[] values = line.Split(','); int id = int.Parse(values[0]); FlatBuffers.StringOffset[] selectList = new FlatBuffers.StringOffset[values.Length - 1]; for (int i = 1; i < values.Length; ++i) { string message = values[i].Replace("\\n", "\n");; selectList[i - 1] = fbb.CreateString(message); } data[count] = MessageSelectTable.Data.CreateData(fbb, id, MessageSelectTable.Data.CreateSelectVector(fbb, selectList)); ++count; } FlatBuffers.VectorOffset infoVec = MessageSelectTable.DataList.CreateDatasVector(fbb, data); FlatBuffers.Offset <MessageSelectTable.DataList> reslut = MessageSelectTable.DataList.CreateDataList(fbb, infoVec); MessageSelectTable.DataList.FinishDataListBuffer(fbb, reslut); using (System.IO.FileStream fs = new System.IO.FileStream("message-select-table.bin", System.IO.FileMode.Create)) { using (System.IO.BinaryWriter bw = new System.IO.BinaryWriter(fs)) { bw.Write(fbb.SizedByteArray()); } } }
public void SortedVectors_NullKey_NotAllowed() { var builder = new FlatBuffers.FlatBufferBuilder(1024 * 1024); var strings = new List <string>(); var stringOffsets = new List <FlatBuffers.Offset <Oracle.SortedVectorStringTable> >(); foreach (string s in new[] { Guid.NewGuid().ToString(), null, Guid.NewGuid().ToString() }) { strings.Add(s); FlatBuffers.StringOffset strOffset = default; if (s != null) { strOffset = builder.CreateString(s); } stringOffsets.Add(Oracle.SortedVectorStringTable.CreateSortedVectorStringTable(builder, strOffset)); } Assert.Throws <InvalidOperationException>( () => Oracle.SortedVectorStringTable.CreateSortedVectorOfSortedVectorStringTable(builder, stringOffsets.ToArray())); }