自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(57)
  • 资源 (12)
  • 收藏
  • 关注

原创 简搜,一个安卓应用,用于扫描纸质书,把它变成可以用多个关键词搜索的电子书

诸如自考、公务员考试考试中,需要大量刷题时,大部分知识点就在书中,但是要找到它,通常要花几分钟甚至个把小时。1)本软件免费使用,实现逐页扫描纸质书,并将其中内容变得可以搜索,方便书本拥有者查找书本中的知识,用于自考、考公等场景,也适合对工具书的搜索。3)扫描内容只能由扫描者使用,不得以任何形式分享或传播,如因分享或传播所带来的一切法律风险须由使用人承担,本人不承担任何责任。电子书中内置了搜索引擎,可以像百度搜索一样在书中搜索,列出满足条件的页,缩小检索范围,极大减少搜题时间。如不同意以上条款,请勿使用。

2024-04-18 21:23:37 22

原创 半老的码农,能做点什么?

至简网格是为中小企业信息化、自动化服务的开发框架,它提供了端与云的全部技术实现。小到可以部署在一部手机上,大到可以跨机房集群,跨城市容灾。因为足够小,所以可以运行在各种资源受限的场景中,比如边缘计算。因为足够简单,接口定义很简单,端侧UI也非常容易,刚毕业的学生也可以很快掌握并开发出像样的服务。

2024-04-10 14:37:07 132

原创 Android开发中,Vue 3处理回退按键事件

/声明全局函数,在Activity中调用。//使用CompletableFuture,可以解决很多Android中调用跟回调分离十万八千里的问题。* 先判断vue中是否有历史可回退,如果有则执行vue的back,并返回true,否则直接返回false。vue3有一些变化,按照网上有些文章的方法,发现行不通,通过一段时间的打印、尝试后,发现以下方法可行。//实现按回退按钮回退历史页面,如果无历史,则退出activity或应用。

2024-02-01 18:08:05 384

原创 windows中文界面乱码问题

windows 程序 界面 乱码 UTF8

2023-07-28 09:01:05 654

原创 C# HttpClient.Pipeline的坑

C# HttpClient.Pipeline的坑,响应内容与请求对应不上,出现了错乱

2023-07-12 09:50:32 461

原创 Java中char数组与byte数组的互转

Java中char数组与byte数组的互转

2023-06-21 16:26:49 1573

原创 C#使用ECC椭圆曲线算法实现加密与解密&签名与验签,有完整代码

C#使用EC椭圆曲线算法实现加解密&签名与验签,有完整代码。实现了将公钥、私钥转为base64字符串,以及反向转换。转换的公私钥可以与Java互通。

2023-06-14 22:33:17 2160

原创 Android升级AGP8,启用R8,使用fastjson、log4j,发现无法release,生成了也不能正常使用

自动升级后,使用了AGP8,然后出现一堆Missing Class错误,在项目的proguard-rules.pro文件中添加-ignorewarnings(AGP7之后warnings升级为errors,导致无法继续),总算生成了release版本。根据文档提示,在工程的gradle.properties中添加android.enableR8.fullMode=false,禁用掉fullmode,发现可以了,apk变大了将近1M,完全可以接受,还是比以前的release小将近一半。总之,应用已经废了。

2023-06-02 18:24:33 861

原创 Android实现App内自动升级,适配了安卓7、8及以上版本

应用发布后,要实现灰度升级控制,如果只依赖各家应用市场是不够的,还需要自己在应用中控制升级逻辑。并且每家应用市场上新审核也是一件很麻烦的事情,尤其像这样的应用,甚至没在应用市场上架,更不可能依赖它们了。所以必须要在应用中实现自动升级功能。网上有很多介绍,他们摸索的结果对我有很大帮助。可能是因为版本关系,或者关注点不同,照着做,会有很多过时的或错误的地方,所以我将摸索过程记录在此,防止忘记。下面几个图是在华为荣耀V9(安卓7.0、SDK 24)中的界面:图1、提醒有可升级的版本图2、下载版本。

2023-05-29 15:34:03 3769 6

原创 Java实现IPv4转地址,基于纯真数据库的一种高性能实现

IPv4转地址,返回String[],有四个部分:运营商、国家根域名 国家、省/州、详细地址(市、县/区),其中省份、详细地址、运营商信息可能没有,如果没有,则返回“*”。比如查询“1.34.236.0”返回“中华电信 中国 台湾 新北”,查询“1.57.0.255”,返回“联通 中国 黑龙江 绥化”,查询“4.0.0.7”,返回“Level3 美国 科罗拉多州 布隆菲尔德”。使用原来的55万行IP地址记录作为查询输入,做了个性能测试,单线程可以达到500万/秒,性能与功能应该能满足绝大部分使用场景了。

2023-05-23 15:19:04 198

原创 至简网格:一套适合中小企业信息化开发的框架,端云结合,全面服务化,可分布式跨站部署,也可部署在一部旧手机上

至简网格是一套端云结合的开发框架,极大简化服务端、客户端的开发、运维难度,同时兼顾安全、可靠。

2023-05-17 11:44:33 170

原创 Git操作备忘

记录git常用操作

2023-04-27 11:09:17 693

原创 Netty 4中ChunkedWriteHandler与HttpContentCompressor冲突导致不压缩的问题

如果ChunkedWriteHandler与HttpContentCompressor都使用,在传递文件会忽略掉HttpContentCompressor导致内容并没有压缩,所以重载HttpContentCompressor使得它可以与ChunkedWriteHandler配合使用。以下代码中重载write函数将msg包装成HttpContent使得内容可以被压缩,同时重载beginEncode只容许压缩几种常见的类型,其他类型都放弃压缩,比如jpg、png等本身已经压缩过,再次压缩只会增大体积。

2023-04-19 14:52:05 376

原创 Android webview点击<input type=“file“>选择文件的实现

在安卓webview中实现选择文件的功能

2023-04-17 11:00:58 1799

原创 安卓Webview中异步加载资源

安卓Webview中异步加载资源,资源可以是其他网站的内容,也可以是本地的文件

2022-11-25 08:52:27 597

原创 全栈开发中碰到的一些问题及解决方法

在AndroidMenifest.xml-application-android:networkSecurityConfig中可以自定义安全策略,比如预置自签名的根证书等。在一些例子中,出现诸如DATA_DIR、PACKAGE_NAME等属性,其实它们不能用,通过看代码,猜测可能是因为logback获取应用Context的方法有误。所以需要在程序里加载配置前,设置自定义属性,然后在logback.xml中引用。

2022-09-21 08:39:07 2579

原创 KeyTool生成证书链及在java、c#中的运用

SSL中用到证书,那么证书是什么?证书可以理解为一个包含了签发方信息、拥有者信息、公钥、由签发方私钥产生的签名等信息的文档,当然还包括其他一些信息。校验用户证书是否可信,实际上就是检验该证书是否由合法的机构签发的。校验时,通过该证书中的结构信息找到对应机构的证书,利用机构证书中的公钥去校验用户证书中的签名是否正确。从上述校验方法可以看出,证书是否可信,是由其签发方证书来校验的,而机构的证书是否可信,是由上一层机构的证书来校验的,如此就形成一条证书链,最顶层机构的证书的就是常说的根证书。

2022-09-14 23:05:03 3043

原创 【备忘】Windows下一些常用路径记录

任务栏图标路径:C:\Users\用户名\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch\User Pinned\TaskBar比如修改cmd的起始路径,可以在这个目录下找到cmd的快捷方式,然后右键选择“属性”,修改“起始位置”即可。开始菜单快捷方式路径:C:\ProgramData\Microsoft\Windows\Start Menu\Programshosts路径(用于添加本地域名解析):C:\Windo.

2021-10-12 21:27:58 345

原创 【备忘】Eclipse Gradle工程中碰到的一些问题

环境 Gradle安装 网上有很多教材,不赘述。下载最新的gradle解压到一个目录; 增加环境变量GRADLE_HOME(gradle的解压目录)、及GRADLE_USER_HOME; 在环境变量PATH中增加一个 %GRADLE_HOME%\bin Eclipse Gradle插件安装 安装buildship插件,默认已安装,如果没安装,则在help->eclipse marketplace中搜索buildship,安装创建工程Eclipse创建工程时,选择一个

2021-09-10 22:56:58 1526 2

原创 【备忘】Android开发探坑记录(包括AndroidStudio)

1)应用权限在AndroidMenifest.xml中设置,与application同一级别 <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> <uses-permission android:name="android.permissi...

2020-12-05 12:21:20 133

原创 Rust 开发环境安装

1.设置跟路径设置环境变量RUST_HOME;RUSTUP_HOME=%RUST_HOME%\.rustupCARGO_HOME=%RUST_HOME%\.cargoRUSTUP_UPDATE_ROOT=https://mirrors.ustc.edu.cn/rust-static/rustupRUSTUP_DIST_SERVER=https://mirrors.ustc.edu.cn/rust-staticRUST_BACKTRACE=1 //调试出错时打印详细调用栈2.安装2.1.安装

2020-09-06 21:57:01 822 3

原创 【备忘】CefSharp使用

创建.net framework form类型的项目虽然网络说wpf类型项目是未来,form将淘汰,但是我不喜欢用xml生成界面,可视化设计+程序生成更加容易使用 使用.NET framework(不要使用.NET core,不然在Register JS时提示BrowserSubprocess错误),据说可以跨多个平台,暂时没有验证添加CefWinForms使用NuGet工具安装CefSharp.WinForms,它依赖CefSharp.Common,CefSharp.Common又..

2020-08-18 22:42:08 1252

原创 【备忘】nodejs+npm+electron安装

一、nodejs+npm安装下载nodejs的二进制解压版,在d:\tools下解压,改目录名为nodejs,设置环境变量NODE_HOME为D:\Tools\nodejs; 其他配置npm config set cache="D:\Tools\nodejs\node_cache"编译过程中下载的东西都缓存在这里的npm config set prefix="D:\Tools\nodejs\node_global"这个配置会改变npmrc的位置在环境变量的path中增加%NOD.

2020-08-18 22:34:30 558

原创 【备忘】mychrome编译尝试,最终失败了,只是解决了stdafx的问题

DuiLib编译 String等系统标准头文件找不到 在项目上点击右键,选择“属性”,找到“配置属性-常规”,修改windows sdk版本,这里列出了系统已经安装的SDK版本 找不到stdafx.h 在项目属性中找到C/C++,将“预编译头”选项改成使用 找不到DuiLib.pch 找到stdafx.CPP文件,右键选择“属性”,将“预编译头”改为“创建”,因为这个文件是在所有编译之前编译,它不能使用自身的编译结果 遇到意外的文件结尾 ...

2020-08-18 22:32:51 130

原创 memcached的大坑,千万别踩

memcached的大坑,千万别踩

2014-10-22 15:22:59 3728 1

原创 反向代理的含义

“反向代理”这个名词应是相对于“代理”这个词,代理的作用不必多说,最常见的场景是在一些局域网中的用户浏览网页,会在浏览器中设置代理服务器,通过代理访问外网。而反向代理不是给普通用户用的,是给服务端业务服务器用的,可以理解成业务服务器集群的一个网关。

2014-09-19 11:32:13 983

原创 Java 删除c/c++/java代码注释的代码片段

enum CommentState {NORMAL, COMMMENT_START, MULTI_COMMENT, SIGNLE_COMMENT, COMMENT_ENDING, COMMENT_END, STR, SINGLE_STR};    public static String removeComment(String s) {        int len = s.length

2014-06-20 15:16:19 722

原创 HandlerSocket java客户端

handlersocket优点,相当于sql性能更高,相对于memcached,可以持久化,支持多列等,因为基于存储引擎,所以数据库的集群也是可以支持的(我没测试),使用handlersocket时,服务端CPU消耗更少。但是,有个比较大的缺点,有handlersocket客户端连接时,我测试的是,这时不能调整表结构。同时查询只能基于索引,不能关联多个表等(这些都是可以接受的)。

2014-03-09 21:37:15 1376 1

原创 erlang 使用rsa加密及解码的方法

其中的pub.key格式如下-----BEGIN PUBLIC KEY-----.....-----END PUBLIC KEY-----pri.key格式如下-----BEGIN RSA PRIVATE KEY-----...-----END RSA PRIVATE KEY------module(rsa).-author('flyin

2013-12-18 14:15:20 2943

原创 简单的js calendar

(function($){    var g_dayNumOfMonth = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];    var g_cn_weekDays = ['日', '一', '二', '三', '四', '五', '六'];    var g_cn_months = ['一月', '二月', '三月', '四月',

2013-11-22 18:35:27 773

原创 一个android sdk工程的ant脚本样例

以下脚本只需要修改部分即可,总共6处,满足大部分的场景,包括了proguard,工程目录下需要有proguard.cfg文件。附带一句,如果proguard中要去除debug日志,可以在proguard.cfg文件中加入以下内容:-assumenosideeffects class android.util.Log { public static *** d(..

2013-10-09 09:57:24 1257 1

原创 android:layout_gravity与gravity的区别

gravity是指元素的子元素在该元素中的布局位置;layout_gravity是指该元素在父元素中的布局位置。这两个经常搞混。

2013-08-08 20:42:00 478

原创 eclipse中选择元素后反显的设置

java文件的设置"Window"-"preferences"-"Java"-"Editor"-"Mark Occurrences"复选框勾选 js文件的设置"Window"-"preferences"-"web"-"javascript"-"Mark Occurrences"复选框勾选其他语言,在响应的editor中

2013-06-18 10:53:35 1005

原创 android升级sdk后,原来正常的工程,运行时提示classnotfound

原因是classpath文件的要求变化了,需要在工程根目录下的".classpath"文件中,将以下这行:改为:然后refresh、clean工程,再次运行就可以了。

2013-06-14 15:45:10 862

原创 AZDG算法java实现

这个算法不知道什么时候出来的,discuz中用它来记录用户信息,存到客户端浏览器的cookie中,每次请求时,服务端解开它,得到用户信息,下面这段代码是java的实现,从网上搜到一些原始代码,改造了一下。性能还可以,双核2G主频,8线程,可以稳定在13万tips以上的加解密,比从数据库、cache取数据要高效非常多,相同环境下AES加解密不到5万tips。明文、密码越长加密越慢,相同明文、

2013-06-07 14:45:39 1554

原创 android 项目更改包名的方法

1、在项目上右键,选择android tools->rename application package,输入需要改为的名称,然后选择需要改的包,有部分包可能不需要更名2、上一步并没有修改源码的包,只是将工程中涉及包名的地方改了,下面修改源码的包名,右键要改包名的源码包,选择refactor->rename,注意一定要将rename subpackages选上,否则子包不会被更名。

2013-04-26 10:13:59 1513

原创 查询进程中的线程

比如查询httpd的线程数pstree -a|grep httpd |wc -l命令查是207

2013-04-19 17:09:50 554

原创 android不能产生R.java的解决办法总结

如果不能产生R.java,通常是res下面的文件有错误,比如格式错误等,有种比较特殊的情况是,如果相同目录有重名的图片文件也会出现错误,比如a.png、a.9.png这时就错了。       还有就是aapt.exe损坏,这种只能先关闭eclipse,然后在sdk manager中,先删除platform tools,再安装它,启动eclipse,clean项目。       在运行a

2013-04-12 23:08:53 1370

原创 Android屏幕尺寸适配注意事项

1      基本设置1.1     AndroidManifest.xml设置在中添加子元素android:anyDensity="true"时,应用程序安装在不同密度的终端上时,程序会分别加载xxhdpi、xhdpi、hdpi、mdpi、ldpi文件夹中的资源。 相反,如果设为false,即使在文件夹下拥有相同资源,应用不会自动地去相应文件夹下寻找资源:1)       如果d

2013-04-03 08:55:17 2092

原创 eclipse批量改文件编码

在导入工程时经常会出现编码不一致的问题。可以在windows->preferences->general->content type中,选中你要转换编码的文件类型,比如php,然后在最下面的default encoding中写上你要的编码,比如utf-8,点击update之后,eclipse会启动批量转换。

2013-04-02 10:31:59 965

简搜scanner-app

扫描纸质书,让它变成可以像百度搜索一样使用的电子书。 诸如自考、公务员考试考试中,需要大量刷题时,大部分知识点就在书中,但是要找到它,通常要花几分钟甚至个把小时。那么,打开本应用,将书本逐页拍照后,一键变成电子书。电子书中内置了搜索引擎,可以像百度搜索一样在书中搜索,列出满足条件的页,缩小检索范围,极大减少搜题时间。 使用条款: 1)本软件免费使用,实现逐页扫描纸质书,并将其中内容变得可以搜索,方便书本拥有者查找书本中的知识,用于自考、考公等场景,也适合对工具书的搜索。 2)本软不存储或使用个人隐私信息,不上传扫描内容。 3)扫描内容只能由扫描者使用,不得以任何形式分享或传播,如因分享或传播所带来的一切法律风险须由使用人承担,本人不承担任何责任。 4)扫描内容存于使用者设备中,任何原因造成的丢失、损坏或被非法窃取,本人不承担任何责任。 如不同意以上条款,请勿使用。

2024-04-18

IPv4转地址数据库,体积小,性能卓越-基于2023-9-7

IPv4转地址,体积小,性能卓越。

2023-05-23

netty 4.1.85 all-in-one

netty从4.1.69开始,没有all-in-one包,取而代之的是一个只有marven的jar。 对于不用maven、gradle的工程使用起来比较麻烦。 所以在一个gradle工程中引用4.1.85, implementation 'io.netty:netty-all:4.1.85.Final' 自动下载完之后,在gradle的暂存目录下找到所有的jar,拷贝到同一个目录下面; 解压所有的jar:jar -xvf *.jar 然后将jar移走,运行:jar -cvfM "netty-all-4.1.85.Final.jar" . 注意最后有一个"."。合并完成后,就可以在传统的工程中引用了,也可以在gradle项目中使用。

2022-11-25

基于jquery的小日历,可以单选、多选、按范围选

小巧的jquery日历小控件,可以提供单选、多选、按范围选择。 $.fn.calendar({target:"#显示日期的html id"});

2015-01-19

BitVise SSH SCP客户端

集成了sftp与ssh客户端,用起来比putty、winscp方便。 开源的,在此共享,免得到时国外网站下不了。

2014-12-31

firebug 2.0.7

最近firefox的firebug下载不了, 找个插件费了老半天,上传共享之

2014-12-31

handler socket erlang client

handlersocket是基于mysql的nosql解决方案,与普通的nosql方案比较,具有更大的灵活性,可以使用mysql的索引。性能相比于mysql的批量操作方式,具有5倍左右的提升(我测试的,可能是内存设置的不多)。 详细内容见此链接 https://sourceforge.net/projects/erlanghandlerso/

2013-02-15

日期间隔计算器

计算两个日期之间的间隔,特别适计算怀孕周数、小孩有多少天等。 输入开始日期、结束日期,就会显示两个日期之间相差的年、月、日、周、时、分,比如2012-1-26与2012-3-15之间相隔0年,2个月,50天等;同时会显示相应公历对应的阴历、节假日、节气等信息。 每次打开工具,开始日期设为上次设定的日期,结束日期为当前日期。 注意:天干地支纪年是以“立春”为界,而不是以正月初一为界。

2012-03-18

FrameCHM2.66

1)本软件的主要功能是将大量杂散的Word、HTML、文本文档、图片文档自动组合后,生成一个CHM文档,便于内容查找; 2)在生成CHM文档时,文档的容量将会压缩为原来的1 / 10 到 1 / 4,便于文档的存储; 3)如果原文档是HTML、TXT等类型的文档,在生成CHM文档时无需转换,直接加入到CHM文件中; 4)如果是Word文档,本软件会自动将它转换成HTML格式的文档,转换过程中会对原文档的格式造成一定的损失; 5)如果选择“自动生成目录”则程序在生成的CHM文件的目录中自动增加一个目录检索; 6)生成ID头文件,这个文件是为开发提供的,开发可以根据头文件中提供的ID跳转到CHM中不同的页面,详见配置项说明部分。

2008-10-18

UML工具FrameUML

支持UML2.XX,完全自开发,可以将UML导出为CHM。可以支持javascript对模型进行操作。 缺点是:现在没有帮助,包括javascript的接口也没有帮助,后期会提供。

2008-10-12

XSCHMBuilder2.66

XSCHMBuilder 软件由南京学思开发,可自由使用与传播。能一次将大批量的、杂散的word、txt、图片、html文档编译进chm文件中。您所需做的工作就是创建工程、修改源目录、目标目录,然后执行工程就可以了,具体可以看帮助。<br>2.66新增:<br>1、文件导航,在文件的首尾自动增加向前、向后的导航(可通过替换配置去除);<br>2、输出列表,点击目录时,可以看到当前目录下所有文件、目录的列表(可通过替换配置去除)。<br>

2008-02-23

XSCHMBuilder2.63

XSCHMBuilder 软件由南京学思开发,可自由使用与传播。能一次将大批量的、杂散的word、txt、图片、html文档编译进chm文件中。您所需做的工作就是创建工程、修改源目录、目标目录,然后执行工程就可以了,具体可以看帮助。<br>

2008-01-09

XSCHMBuilder2.63

本软件能一次将大批量、杂散的word、txt、图片、html文档编译到一个chm文件中,如果您在开发中用到chm,此软件也可以生成开发中用到的ID头文件。您所需做的工作就是创建工程、修改源目录、目标目录,然后执行工程就可以了,具体可以看帮助。如有疑问,请打开菜单“关于XSCHMBuilder”,上面有eMail地址。 <br>此版本是在2.62的基础上改进的,修改了在部分计算机上目录不能排序的问题。<br>此软件由南京学思信息技术有限公司开发,可自由使用、传播。<br>学思网站http://www.xuesi.cn,本公司主推:制造业数字化解决方案、办公数字化解决方案,CRM软件名称为XSCRMTopsales PersonalFree,各大网站均有免费版下载,欢迎使用。<br>

2007-10-20

XSCHMBuilder2.62

此软件由南京学思信息技术有限公司开发,可自由使用、传播,学思网站http://www.xuesi.cn,本公司主推:制造业数字化解决方案、办公数字化解决方案,CRM软件名称为XSCRMTopsales PersonalFree,各大网站均有免费版下载,欢迎使用。<br/>本软件能一次将大批量、杂散的word、txt、图片、html文档编译到一个chm文件中,如果您在开发中用到chm,此软件也可以生成开发中用到的ID头文件。您所需做的工作就是创建工程、修改源目录、目标目录,然后执行工程就可以了,具体可以看帮助。如有疑问,请打开菜单“关于XSCHMBuilder”,上面有eMail地址。 <br/>此版本是在2.5的基础上改进的,修改了几个错误,更改了读取xml文件的方法,如果您安装了2.5版本,请卸载,然后重新配置,也可以通过保留安装目录下的config.xml来保存配置,安装完后覆盖同名文件即可

2007-06-28

XSCHMBuilder2.5

此软件由南京学思开发,可自由使用与传播。 能一次将大批量的、杂散的word、txt、图片、html文档编译进chm文件中。您所需做的工作就是创建工程、修改源目录、目标目录,然后执行工程就可以了,具体可以看帮助。 如有疑问,请打开菜单“关于XSCHMBuilder2.5”,上面有联系地址。

2007-02-04

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除