未处理前中文显示:"DTWuD_0_4.42_\u7C7B\u578B\u4E0D\u7B26_wuubao"
修改LitJson代码JsonWriter.cs中
private void PutString (string str)
{
Put (String.Empty);
writer.Write ('"');
writer.Write(str);
writer.Write ('"');
}
修改后显示:"DTWuD_12_(x:2341,y:1389)_(w:73,h:79)_面积:3923.00,得塔值:50_类型不符(DTW试试)_wubao",
using LitJson;
StreamWriter sw = new StreamWriter(jsonfile,false, Encoding.GetEncoding("GB2312"));
JsonWriter writer = new JsonWriter(sw);
writer.PrettyPrint = true;
writer.WriteObjectStart();
writer.WritePropertyName("version"); writer.Write("4.1.4");
writer.WritePropertyName("flags"); writer.WriteObjectStart(); writer.WriteObjectEnd();
writer.WritePropertyName("shapes");
writer.WriteArrayStart();
foreach (Imgdefect imgdefect in Defect)
{
string str = "";
str = string.Format("{0}_{1}_(x:{2},y:{3})_(w:{4},h:{5})_面积:{6},得塔值:{7}_{8}({9})_{10}", imgdefect.DefectName, imgdefect.PageNo, imgdefect.XInGold, imgdefect.YInGold,
imgdefect.DefectW, imgdefect.DefectH, imgdefect.Area.ToString("F2"), imgdefect.Gray,GetlouwuCause(imgdefect), imgdefect.Remark, GetStr(type));
writer.WriteObjectStart();
writer.WritePropertyName("label"); writer.Write(str);
writer.WritePropertyName("points");
writer.WriteArrayStart();
writer.WriteArrayStart();
writer.Write(imgdefect.DefectRect.X);
writer.Write(imgdefect.DefectRect.Y);
writer.WriteArrayEnd();
double x2 = imgdefect.DefectRect.X + imgdefect.DefectRect.Width;
double Y2 = imgdefect.DefectRect.Y + imgdefect.DefectRect.Height;
writer.WriteArrayStart();
writer.Write(x2);
writer.Write(Y2);
writer.WriteArrayEnd();
writer.WriteArrayEnd();
writer.WritePropertyName("shape_type"); writer.Write("rectangle");
writer.WritePropertyName("flags"); writer.WriteObjectStart();
writer.WritePropertyName("Must"); writer.Write(true);
writer.WritePropertyName("Expect"); writer.Write(false);
writer.WritePropertyName("Continuous"); writer.Write(imgdefect.IsContinuous);
writer.WritePropertyName("Serious"); writer.Write(imgdefect.IsSerious);
writer.WriteObjectEnd();
writer.WriteObjectEnd();
}
writer.WriteArrayEnd();
{
writer.WritePropertyName("imagePath"); writer.Write(ImgName);
writer.WritePropertyName("imageData"); writer.Write(null);
writer.WritePropertyName("imageHeight"); writer.Write(ImgHeight);
writer.WritePropertyName("imageWidth"); writer.Write(ImgWidth);
}
writer.WriteObjectEnd();
sw.Flush();
sw.Dispose();
return true;
保存json文件如下
{
"version" : "4.1.4",
"flags" : {
},
"shapes" : [
{
"label" : "DTWuD_12_(x:2341,y:1389)_(w:73,h:79)_面积:3923.00,得塔值:50_类型不符(DTW试试)_wubao",
"points" : [
[
4147.0,
172.0
],
[
4260.0,
271.0
]
],
"shape_type" : "rectangle",
"flags" : {
"Must" : true,
"Expect" : false,
"Continuous" : false,
"Serious" : true
}
}
],
"imagePath" : "img_0001.bmp",
"imageData" : null,
"imageHeight" : 1000,
"imageWidth" : 8192
}