From 09f411e381f885619b32e05fc89cad26bb20824d Mon Sep 17 00:00:00 2001 From: riku <risaku@163.com> Date: 星期一, 01 三月 2021 14:27:56 +0800 Subject: [PATCH] Merge remote-tracking branch 'obdserver2/master' --- src/test/kotlin/com/flightfeather/uav/Test.kt | 150 +++++++------------------------------------------ 1 files changed, 22 insertions(+), 128 deletions(-) diff --git a/src/test/kotlin/com/flightfeather/uav/Test.kt b/src/test/kotlin/com/flightfeather/uav/Test.kt index d359695..9ab8a21 100644 --- a/src/test/kotlin/com/flightfeather/uav/Test.kt +++ b/src/test/kotlin/com/flightfeather/uav/Test.kt @@ -1,6 +1,13 @@ package com.flightfeather.uav +import com.flightfeather.uav.socket.bean.DataUnit +import com.flightfeather.uav.socket.decoder.AirDataDecoder +import com.flightfeather.uav.socket.eunm.AirCommandUnit +import com.google.gson.Gson import org.junit.Test +import java.io.File +import java.io.FileOutputStream +import java.io.OutputStreamWriter import java.text.SimpleDateFormat import java.util.* @@ -12,139 +19,26 @@ @Test fun foo1() { - val b = ByteArray(20) {8} - val a = 1 - println(a.toString(2)) + val s = SimpleDateFormat.getDateTimeInstance().format(Date()) + println(s) } @Test fun foo2() { - val b = ByteArray(2) - b[0] = 0x01 - b[1] = 0x80.toByte() - - println("${b[0].toString(16)}${b[1].toInt()}") - println("${b[0]}${b[1]}".toInt(16)) - } - - @Test - fun foo3() { - val hexNum = "ff" - val length = hexNum.toInt(16) - println(length) - } - - @Test - fun foo4() { - val h = "0101" - val byte = 0xff - val b = h.toInt(16) - println(b) - } - - @Test - fun foo5() { - val s = "23 23 30 30 30 30 30 35 33 31 36 30 38 30 31 30 35 33 36" - val sb = StringBuilder() - val ascii = s.split(" ") - ascii.forEach { - sb.append(it.toIntOrNull(16)?.toChar()) - } - println(sb.toString()) - } - - @Test - fun foo6() { - val cal = Calendar.getInstance().apply { - set(2019, 9, 15, 23, 16, 59) - } - - println(SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(cal.time)) - } - - @Test - fun foo7() { - val a = "0AAF".toIntOrNull(16)?.toString(2) - println(a) - } - - @Test - fun foo8() { - val byte = ByteArray(2) - byte[0] = 0x23 - byte[1] = 0x23 - - byte[0].toString(16) - } - - @Test - fun foo9() { - val b = 128.toByte() - var a = 0 - if (b < 0) { - a = b + 256 - } else { - a = b.toInt() - } - println(b.toString(16)) - } - - @Test - fun foo10() { - val s = "2 31 37 36 39 31 35 33 31 39 30 39 31 32 30 30 30 36 1 1 0 42 13 9 f 12 33 3b 2 0 8a 1b 0 36 2e 0 23 60 11 b4 0 c8 0 b4 0 0 66 0 0 0 0 0 0 73 0 0 0 b9 4 75 0 2e d8 ed 0 0 0 0 80 0 bc 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0" - val ascii = s.split(" ") - var bcc = 0x00 - ascii.forEach { - bcc = bcc.xor(it.toInt(16)) - } - println(bcc.toString(16)) - } - - @Test - fun foo11() { - val b = mutableListOf<String>().apply { - add("13") - add("09") - add("10") - add("10") - add("2b") - add("2f") - } - if (b.size < 6) { - println("null") - } - - val year = b[0].toInt(16) + 2000 - if (year < 2000 || year > 2099) println("null") - val month = b[1].toInt(16) - val day = b[2].toInt(16) - val hour = b[3].toInt(16) - val min = b[4].toInt(16) - val sec = b[5].toInt(16) - val cal = Calendar.getInstance().apply { - set(year, month - 1, day, hour, min, sec) - } - - println(SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(cal.time)) - } - - @Test - fun f0012() { - val sb = java.lang.StringBuilder() - val byte = ByteArray(2) - byte[0] = 0x00 - byte[1] = 0xBD.toByte() - byte.forEach { b -> - var a = 0 - a = if (b < 0) { - b + 256 - } else { - b.toInt() + val file = File("E:\\VSprojects\\uav-monitor\\asset\\data\\data-2020-12-24-01-34-24.txt") + val outFile = File("E:\\VSprojects\\uav-monitor\\asset\\data\\data.json") + val out = OutputStreamWriter(FileOutputStream(outFile)) + val list = mutableListOf<List<DataUnit>>() + file.readLines().forEach { + val p = AirDataDecoder.instance.decode(it) +// val str = Gson().toJson(p.dataUnit) + if (p.commandUnit == AirCommandUnit.AirData.value) { + list.add(p.dataUnit) } - - sb.append(a.toString(16)) } - - println(sb.toString().toInt(16)) + val str = Gson().toJson(list) + out.append(str) + out.flush() + out.close() } } \ No newline at end of file -- Gitblit v1.9.3