logic/parser/DataTableGenerator/DataTableProcessor.cs
(开头部分) 10KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
namespace tablegen2.logic.parser.DataTableGenerator
{
public delegate void DataTableCodeGenerator(DataTableProcessor dataTableProcessor, StringBuilder codeContent, object userData);
public sealed partial class DataTableProcessor
{
private const string CommentLineSeparator = "#";
private static readonly char[] DataSplitSeparators = new char[] { '\t' };
private static readonly char[] DataTrimSeparators = new char[] { '\"' };
private readonly string[] m_NameRow;
private readonly string[] m_TypeRow;
private readonly string[] m_DefaultValueRow;
private readonly string[] m_CommentRow;
private readonly int m_ContentStartRow;
private readonly int m_IdColumn;
private readonly DataProcessor[] m_DataProcessor;
private readonly string[][] m_RawValues;
private readonly string[] m_Strings;
private string m_CodeTemplate;
private DataTableCodeGenerator m_CodeGenerator;
public DataTableProcessor(string dataTableFileName,Encoding encoding,int nameRow ,int typeRow,int? defaultValueRow, int? commentRow, int contentStartRow,int idColumn )
{
if (string.IsNullOrEmpty(dataTableFileName))
{
throw new Exception("Data table file name is invalid");
}
if (!dataTableFileName.EndsWith(".txt", StringComparison.Ordinal))
{
throw new Exception($"Data table file {dataTableFileName} is not a txt.");
}
if (!File.Exists(dataTableFileName))
{
throw new Exception($"Data table file {dataTableFileName} is not exists.");
}
string[] lines = File.ReadAllLines(dataTableFileName,encoding);
int rawRowCount = lines.Length;
int rawColumnCount = 0;
List<string[]> rawValues = new List<string[]>();
for (int i = 0; i < lines.Length; i++)
{
string[] rawValue = lines[i].Split(DataSplitSeparators);
for (int j = 0; j < rawValue.Length; j++)
后面还有 288 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。