之前用牛逼的绘图以及分析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读取.

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

  1. Pl/sql 如何将oracle的表数据导出成excel文件?

    oracle将表数据导出成excel文件的方法 1)在SQL窗体上,查询需要导出的数据 --查询数据条件-- ; 结果视图 2)在查询结果的空白处,右键选择Copy to Excel 3) 查看导出e ...

  2. 把ANSI格式的TXT文件批量转换成UTF-8文件类型

    把ANSI格式的TXT文件批量转换成UTF-8文件类型 Posted on 2010-08-05 10:38 moss_tan_jun 阅读(3635) 评论(0) 编辑 收藏 #region 把AN ...

  3. matrix-gui-2.0 将javascript文件夹改成js文件夹

    /******************************************************************************** * matrix-gui-2.0 将 ...

  4. 【Linux开发】【DSP开发】利用CCS6.1生成out文件的同时生成bin文件

    [Linux开发][DSP开发]利用CCS6.1生成out文件的同时生成bin文件 标签:[DSP开发] [Linux开发] 尝试在windows上安装的CCS6.1开发AM4378-Linux下的应 ...

  5. 微软BI 之SSIS 系列 - 两种将 SQL Server 数据库数据输出成 XML 文件的方法

    开篇介绍 在 SSIS 中并没有直接提供从数据源到 XML 的转换输出,Destination 的输出对象有 Excel File, Flat File, Database 等,但是并没有直接提供 X ...

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

    从es将数据导出分两步: 查询大量数据 将数据生成文件并下载 本篇主要是将第二步,第一步在<es实战之查询大量数据>中已讲述. csv vs excel excel2003不能超过6553 ...

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

    使用过Keil的同鞋都知道,现在Keil中默认可以输出.axf的调试文件和可以通过钩选输出的.hex可执行文件,没有bin(二进制)文件的输出选项.可是偏偏某些时候需要或者习惯性的使用.bin文件来进 ...

  8. 关于jmeter+ant+jenkins性能自动化将测试结果文件jtl转换成html文件遇到的问题。

    1.ant自身缺陷,返回结果中有特殊字符,乱码字符,无法识别,jtl文件转换时报错. 2.jtl文件过大转换成html文件时出现内存溢出. 针对以上情况:可考虑使用BeenShell Sampler: ...

  9. py文件加密打包成exe文件

    python的py.pyc.pyo.pyd文件区别 py是源文件: pyc是源文件编译后的文件: pyo是源文件优化编译后的文件: pyd是其他语言写的python库: 为什么选用Cpython .p ...

随机推荐

  1. oracle视图V$BH && X$BH的使用列子

    1创建一个测试表,test,并且插入10000行数据:    SQL>  create table test (id int); SQL> begin      2  for i in 1 ...

  2. SqlServer基础:游标

    记录下今天用到的游标: DECLARE @TempID INTDECLARE @Number INTSET @Number=1DECLARE myCursor CURSOR FOR     SELEC ...

  3. iOS多线程知识总结--GCD

    iOS多线程知识总结--GCD 1. iOS中苹果提供4钟方案来帮助我们实现多线程: (1) 纯C语言的pthread,偏底层,需要程序员手动管理线程的生命周期,基本不用. (2) OC语言的NSTr ...

  4. C# --2007Access链接字符串

    public static string connectionString = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDi ...

  5. 面向对象编程(十二)——final关键字

    final关键字 Java关键字final有“这是无法改变的”或者“终态的”含义,它可以修饰非抽象类.非抽象类成员方法和变量. 在Java中,final关键字可以用来修饰类.方法和变量(包括成员变量和 ...

  6. autorelease基本概念

    // //  main.m //  01-autorelease基本概念 // //  Created by apple on 14-3-18. //  Copyright (c) 2014年 app ...

  7. Orchard学习系列-----如何运行的

    感慨:当接触到微软这套程序时,代码实在是太好了,好的几乎都读不懂.很久之前就对这个套开源程序特别感兴趣,但读不明白也让人郁闷. 背景(Orchard官网): 可组装系统的CMS系统,OrChard在运 ...

  8. Lintcode: Rehashing

    The size of the hash table is not determinate at the very beginning. If the total size of keys is to ...

  9. 轉發和重定向-JSP

    最近在復習JSP,寫案例時遇到轉發和重定向的問題,忽然忘記了好多東西.趕緊搜索了下,感覺還是比較常用的. 轉:http://blog.csdn.net/CYHJRX/article/details/3 ...

  10. Android so lib库远程http下载和动态注册

    一.背景 在开发Android应用程序的实现,有时候需要引入第三方so lib库,但第三方so库比较大,例如开源第三方播放组件ffmpeg库, 如果直接打包的apk包里面, 整个应用程序会大很多.经过 ...