将txt文件数据转成bin文件.

之前用牛逼的绘图以及分析bmp的像素文件的方法, 整理出汉字编码从: 0x4E00到0x9FA5, (维基上说是9FD5, 完了, 回头再更新吧.)

https://en.wikipedia.org/wiki/CJK_Unified_Ideographs

出来一个文件是这样事儿的:

19968 一 0800080008000800080008000800080008000800080008000800080008000000
19969 丁 0000200020002000200020042008eff720002000200020002000200000000000
19970 丂 2000200020002c002b00e8002800280028042808280428f32000200020000000
19971 七 080008000800080008000400fff3040404040404020402040204028700000000
19972 丄 0004000400040004000400040004fff700040004000400040004000400040000
19973 丅 2000200020002000200020002000efff20002000200020002000200020000000
19974 丆 20802040202020102c002300e000200020002000200020002000200020000000
19975 万 40084004400240814060cf10440044004404440844044cf34000400040000000
19976 丈 0008010801080d040114012201410180ff710102010401040108010800080000
19977 三 0002400248024802480248024802480248024802480248024802400200020000
19978 上 000400040004000400040004fff7040404040404040404040404000400040000

....

文件是1.5M

格式是, 编码+汉字+模拟出来的点阵编码, 顺便提一句, 这个编码是根据某IC厂的编码原则去写的, 并不适用于所有的点阵扫描方式.

接着, 把前面去掉, 变成了:

0800080008000800080008000800080008000800080008000800080008000000
0000200020002000200020042008eff720002000200020002000200000000000
2000200020002c002b00e8002800280028042808280428f32000200020000000
...
方便下一步处理.

那么接下来, 要将这个都是表面上16进制编码的这些文字, 变成实际上的16进制编码文件, 也就是.bin文件(这样才能烧录到flash当中去).

感谢小波借给我一个写flash的工具, 直接挂上一个8MB的flash, 把读到的空的bin文件倒腾出来, 用FlexHEX看了看, 想着能把之前的编码直接往里面拷贝, 结果人家直接当成utf8/ascii又转了一下.

挠了挠头, 先用C后来直接又用Java, 把读出来的这些String的东西, 转成了byte, BYTE!!!yes!!!这就是我要的东西!!!

public byte shortString2Hex(String shortStr) {
        String baseHext = "0123456789abcdef";
        char c = ‘c‘;
        byte b = 0;
        String masterPosStr = shortStr.substring(0, 1);
        String lowPosStr = shortStr.substring(1);
        // System.out.println(masterPosStr + lowPosStr);
        int cValue = 16 * (baseHext.indexOf(masterPosStr)) + baseHext.indexOf(lowPosStr);
        c = (char) (16 * (baseHext.indexOf(masterPosStr)) + baseHext.indexOf(lowPosStr));
        b = (byte) cValue;
        //System.out.println(cValue);
        //System.out.println(b);
        return b;

}

思路很简单啊, 就是查找这个string在基准string中的位置, 将0-f转换成0-15了, 可不就是byte了么.

然后直接把byte数组写进文件中, 文件名就以bin结尾, 然后烧录进flash, 搞定!!!

不过还没验证呢, 烧录完了, 现在试试用STM32读取.

时间: 2024-10-22 00:53:40

将txt文件数据转成bin文件.的相关文章

CAD格式文件怎么转换成PDF文件

CAD文件是一种绘图工具,可以绘制任意二维三维图形,而且绘制精确性高,所以有很多笔者将绘制的作品选择用pdf文件保存下来,那么CAD格式文件怎么转换成PDF文件呢? 这里小编就教大家怎么将CAD格式文件转换成pdf文件,步骤方法如下. 第一步:搜索迅捷pdf在线转换器(http://app.xunjiepdf.com/cad2pdf),找到相关页面点击进入在线网站主页面,进入页面后,用我们鼠标点到文档转换,找到"CAD转PDF"那个栏目. 第二步:点击"选择文件"选

PDF等电子书文件怎么转换成EPUB文件

EPUB是一个电子书格式,经常看电子书的朋友对这个格式一定不陌生,如果我们在下载了一份PDF或者其它格式的电子书的时候想要将其转换成EPUB格式,那么PDF等电子书文件怎么转换成EPUB文件呢?很多人可能不太清楚该如何操作. 下面小编和大家分享一下电子书格式转换成EPUB格式的方法,有兴趣的朋友一起来看看吧. 第一步:搜索迅捷pdf在线转换器http://app.xunjiepdf.com/eb2epub,找到相关页面点击进入在线网站主页面,进入页面后,用我们鼠标点到文档转换,找到转成epub那

es实战之数据导出成csv文件

从es将数据导出分两步: 查询大量数据 将数据生成文件并下载 本篇主要是将第二步,第一步在<es实战之查询大量数据>中已讲述. csv vs excel excel2003不能超过65536, excel2007及以上版本支持1048576条数据.excel支持的数据量有限,并且生生成文件的速度比较慢. csv具有支持写入量大,文件较小的优点. 故选择csv作为导出文件类型. 导出文件的几种方式: 将数据从es中查询出来,在这个大前提下,对比导出文件的速度. 由前端处理 直接将数据返回给前端,

Keil如何生成bin文件【Keil生成Bin文件的方法】

使用过Keil的同鞋都知道,现在Keil中默认可以输出.axf的调试文件和可以通过钩选输出的.hex可执行文件,没有bin(二进制)文件的输出选项.可是偏偏某些时候需要或者习惯性的使用.bin文件来进行烧写,下面各举一例: 1. 一直使用ADS的用户习惯性的使用.bin文件: 2. 某些烧写器带的应用软件只支持.bin文件: 3. 正如笔者遇到的情况,我在使用STM32公司提供的网络更新固件程序的例程时,需要用到.bin文件(.hex文件通过网络更新后遇到某些问题,而且用Hex2Bin软件转换后

Python3.4 .py文件如何打包成.exe文件

一.安装pywin32 1.下载pywin32-218.win-amd64-py3.4.exe (根据操作系统的位数下载) 2.运行安装 3.如果安装提示如下错误: 打开注册表 "regedit" 1.从"HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Python"找到注册表,导出 2.编辑其内容,用"HKEY_CURRENT_USER\Software" 替换全部的 "HKEY_LOCAL_MACHI

Excel文档数据转成Plist文件

有时候我们需要导入大量数据到App中静态数据,但数据又是存在Excel中,怎么办? 第一,复制数据粘贴到一个.txt文本文档中 第二,就是撸代码了 比如,我需要导入的数据表有2列字段,name和barCode 1 // path 2 NSString *path = [[NSBundle mainBundle] pathForResource:@"tiaoxingma" ofType:@"txt"]; 3 // UTF-8 4 NSString *contents

sql server 把数据 复制成脚本文件

问题描述:想把一个数据库里的表和字段复制到另一个数据库里: 方法一:a.生成脚本文件 选择数据库右键->任务->生成脚本: b. 选择特定的数据库对象->下一步: c.高级->编写脚本的数据类型选择构架和数据->选择生成的脚本文件位置->下一步: d. 下一步->下一步>-完成:找到生成的脚本: e.打开你要复制到的数据库服务器->把你已经复制好的脚本鼠标拖动到右边空白区域->把 USE [xxx] 改为USE [fuzhi]: 方法二:

TXT文件批量换成HTML文件

首先,看下100个txt文件. 我们新建一个txt,输入 ren *.txt *.html 保存,并修改文件名,修改后缀为1.bat.并且双击bat文件. 见证奇迹的时刻到了,所有的txt文本后缀全部替换成为html后缀的. 5 操作都比较简单啊,主要在于批量二字,能替代人工省了不少事情.

SQLServer数据库表架构和数据保存成sql文件

一.先在你的mssql数据库中点击“数据库–>任务–>生成脚本” 二.然后我们会看到有“生成和发布脚本”窗口 下一步 三.选择要编写脚本的数据库对象,全部导出选第一个,如果你想导出部分数据勾选    第二个 四.然后在出现的”高级”按钮 五.最后对要 ”要编写脚本的数据的类型”对应:”架构和数据” 就导出成功了.