Skip to content

Repository files navigation

LinePutScript

Lineput

LinePutScript是一种数据交换格式定义行读取结构和描述其内容的标准语言

可以应用于 保存 设置,资源,模板文件 等各种场景

类似于XML或Json但是比XML和Json更易于使用(理论上)

本类库可以更轻松的创建,修改,保存LinePutScript

提供开源源代码 可以自行修改支持更多功能

项目文件解释

LinePutScript

一个LPS基本操作类,是所有LPS的根引用 如需操作lps文件,请使用这个文件

'LinePutScript.Core' 为.net Core版本

如何使用:

安装

  1. 通过Parckage Manager

LinePutScript

Install-Package LinePutScript
  1. 通过nuget.org

    LinePutScript

  2. 下载nuget包

    Nuget文件夹

关于LinePutScript语言

LinePutScript是一个最高4层*的数据储存语言 *最新1.4版本支持第四层,更多层次也可以使用套娃添加,但是较为繁琐

LineputScript由Line组成, Line由sub组成 sub为 subname#subinfo

这是一个基础的LineputScript文件

line1name#line1info:|sub1name#sub1info:|sub2name#sub2info:|text
line2name#line2info:|money#100:|goods#item1,item2,item3:|

通过C# 读取信息如下

LpsDocumenttmp=newLpsDocument("line1...item3:|");tmp.First().ToString();//line1name#line1info:|sub1name#sub1info:|sub2name#sub2info:|texttmp.First().First().ToString();//line1name#line1info:|tmp["line1name"]["sub1name"].Info;//sub1infotmp[0].Text;//texttmp[1][(gint)"money"];//100tmp[1]["good"].GetInfos()[1];//item2

符号定义

#

#分隔名称Name和信息Info,
或者说分割键与值.

:|

:|分隔 SubSubLineSub

:\n|

lps文件支持多行并插入换行, 例如

详细文档:| 这是一份文件:
| 文件内容为空
详细文档:| 这是一份文件\n 文件内容为空

上方两者表达效果相同

:\n:

lps文件支持多行, 例如

详细文档:| 这是一份文件:
: 文件内容为空
详细文档:| 这是一份文件 文件内容为空

上方两者表达效果相同

使用方法

案例:储存游戏设置

读取LPS文件
//读取LPS文件LpsDocumentSave=newLpsDocument(File.ReadAllText("GAMEPATH\\save1.lps"));//或创建新LPS文件Save=newLpsDocument();
获取和修改数据

案例要求:

  • 储存金钱值为10000
  • 添加类型电脑并储存电脑名字为 "我的电脑"
  • 读取金钱值并加上500

方法1 (lps1.0) -- 早期版本lps 繁琐操作

Save.AddLine(newLine("money","10000"));//添加行 money 10000Save.AddLine(newLine("computer",""));//添加行 compuerSave.FindLine("computer").Add(newSub("name","我的电脑"));//在computer行下面添加子类name和信息我的电脑intMoney=Convert.ToInt32((Save.FindLine("money").info));//获得money储存的值Save.FindLine("money").info=(Money+500).ToString();//储存 money+500

方法2 (lps1.1) -- 上上版本lps 半繁琐操作

Save.AddLine("money").InfoToInt=10000;//添加行 money 10000Save.FindorAddLine("computer").FindorAddLine("name").Info="我的电脑";//查找行computer, 如果没找到,则创建一个新的. 在该computer行下查找或创建子类name,并修改其信息为 我的电脑Save.FindorAddLine("money").InfoToInt+=500;//给money+500

方法3 (lps1.2) -- 上版本lps 半繁琐操作

Save.AddLine("money").InfoToInt=10000;Save.FindorAddLine("computer").FindorAddLine("name").Info="我的电脑";Save["money"].InfoToInt+=500;//给money+500

方法4 (lps1.2+) -- 上版本lps后期 普通操作

Save.SetInt("money",10000);//设置 money 行 值(int)为10000Save["computer"].SetString("name","我的电脑");// 或这样 (对于string来说更方便)Save["computer"]["name"].Info="我的电脑";Save.SetInt("money",Save.GetInt("money")+500);//给money+500

方法5 (lps1.3) -- 最新版本lps 高级操作

Save[(gint)"money"]=10000;//设置 money 行 值(int)为10000Save["computer"][(gstr)"name"]="我的电脑";Save[(gint)"money"]+=500;

方法6 (lps1.8) -- 最新版本lps 无需操作

//储存数据的类publicclassSaveData{[Line]publicintmoney=10000;//设置 money 值(int)为10000publicclassComputer{[Line]publicstringname="电脑默认名字";}[Line]publicComputercomputer=newComputer(){name="我的电脑"};}//读取游戏数据SaveDatadata=LPSConvert.DeserializeObject<SaveData>(Save);data.money+=500;//储存游戏数据Save=LPSConvert.SerializeObject(data);
储存LPS文件
//写入LPS源文件File.WriteAllText("GAMEPATH\\save1.lps",Save.ToString());
储存的LPS文件样式如下
money#10500:|
computer:|name#我的电脑:|

其他

更多用法及参数参见对象管理器

About

LinePutScript是一种数据交换格式定义行读取结构和描述其内容的标准语言

Topics

Resources

Stars

16 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages