- 根据字符串的长度是否超过定义的最大长度来做决定是否做分段打印
- 以JSON格式展示分页数据
private val LOG_MAX_LENGTH = 10
/**
* 根据字符串的长度是否超过定义的最大长度来做决定是否做分段打印
*/
private fun handleStringLog(msg: String) {
var pageNo = 1
// https://blog.youkuaiyun.com/u011595939/article/details/70212552
val totalPages: Int = (msg.length - 1) / LOG_MAX_LENGTH + 1
LegoLog.d("总页数:$totalPages")
// 日志长度超过最大长度分段打印
if (msg.length > LOG_MAX_LENGTH) {
var index = 0
while (index < msg.length) {
val subMsg: String = if (msg.length <= index + LOG_MAX_LENGTH) {
msg.substring(index)
} else {
msg.substring(index, index + LOG_MAX_LENGTH)
}
conver2Json(msg.length, totalPages, pageNo, subMsg)
pageNo++
index += LOG_MAX_LENGTH
}
} else {
conver2Json(msg.length, totalPages, pageNo, msg)
}
}
private fun conver2Json(totalSize: Int, totalPages: Int, pageNo: Int, data: String){
val jsonObj = JsonObject()
jsonObj.addProperty("totalSize", totalSize)
jsonObj.addProperty("totalPages", totalPages)
jsonObj.addProperty("pageNo", pageNo)
jsonObj.addProperty("pageSize", LOG_MAX_LENGTH)
jsonObj.addProperty("data", data)
LegoLog.d(jsonObj.toString())
}
效果展示:
// 方法调用
handleStringLog("123456789")

该博客介绍了一种根据字符串长度超过预设最大值进行分段打印的方法,并以JSON格式展示分页数据。通过计算总页数,遍历字符串并截取子串,然后将每段数据转换为JSON对象进行日志输出。示例中展示了如何处理超过最大长度的日志消息。
1400

被折叠的 条评论
为什么被折叠?



