新版本JFinalJsonKit.JsonResult问题(解决方式)

public class JetfStringJson implements ToJson<String> {

	@Override
	public void toJson(String value, int depth, JsonResult ret) {
		boolean b = true;
		// LogUtils.log(value);
		if (StrKit.notBlank(value.toString())) {
			try {
				// ret.addUnknown(obj);
				// ret.addStr();
				addJSONStr(JSONObject.parseObject(value.toString()).toString(), ret);
				b = false;
			} catch (Exception e) {
				try {
					// ret.addStr(JSONObject.parseArray(value.toString()).toString());
					addJSONStr(JSONObject.parseArray(value.toString()).toString(), ret);
					b = false;

				} catch (Exception e1) {

				}
			}
		}
		if (b) {
			ret.addStr(value);
		}

	}

	private void addJSONStr(String s, JsonResult ret) {

		for (int i = 0, len = s.length(); i < len; i++) {
			char ch = s.charAt(i);
			if ((ch >= '\u0000' && ch <= '\u001F') || (ch >= '\u007F' && ch <= '\u009F') || (ch >= '\u2000' && ch <= '\u20FF')) {
				String str = Integer.toHexString(ch);
				ret.addChar('\\');
				ret.addChar('u');
				for (int k = 0; k < 4 - str.length(); k++) {
					ret.addChar('0');
				}
				for (int j = 0; j < str.length(); j++) {
					char ch1 = str.charAt(j);
					ret.addChar(ch1);
				}

			} else {
				ret.addChar(ch);
			}
		}

	}
}


https://jfinal.com/feedback/8147这个问题在@JFinal的协助下已解决,以上是处理方案,

评论区

huntxt

2021-07-07 17:59

修正了addJSONStr方法原方法有问题

热门反馈

扫码入社