在linux系统

vim md5data  # 打开文件

写入 abc 保存

md5sum md5Data  的计算值和openssl代码计算值不一样

原因在于linux文本文件末尾自动添加了换行

解决方法:

1. 重新vim打开 set binary 然后 :wq 保存 可以看到暂用3字节 之前是4个字节大小

2.用sublime 文本编译器 编写

备注: openssl  MD5代码

MD5_CTX md5Ctx;
string data = "abc";
unsigned char md5Value[16];
char md5Str[33];
MD5_Init(&md5Ctx);
MD5_Update(&md5Ctx, data.c_str(), data.length());
MD5_Final((unsigned char *)&md5Value, &md5Ctx);
for (int i = 0; i < 16; i++)
{
if ((md5Value[i] & 0xf) <= 9){
md5Str[2 * i + 1] = (md5Value[i] & 0xf) + 48;
}
else {
md5Str[2 * i + 1] = (md5Value[i] & 0xf) + 87;
}
if ( ((md5Value[i] >> 4) & 0xf) <= 9){
md5Str[2 * i ] = ((md5Value[i] >> 4) & 0xf) + 48;
}
else {
md5Str[2 * i] = ((md5Value[i] >> 4) & 0xf) + 87;
}

}
md5Str[32] = 0;
cout << md5Str << endl;

vim 文本会在末尾自动添加换行 md5文件和数据只不对应的更多相关文章

  1. 验证fgets末尾自动添加的字符是'\0' 还是 '\n\'?

    最近写代码经常使用字符串,对于输入函数fgets网上有人说输入结束会在末尾自动添加'\n',还有人说添加的是'\n',我决定亲自验证: #include "iostream" #i ...

  2. css实现文本过长时自动添加省略号

    1. 效果 2. Html <div id="main_app_content" class="container"> <div class= ...

  3. Excel小tips - 如何设置表格输入数字后末尾自动添加%

    选中一列——鼠标右键——设置单元格格式——数字——自定义——0% 按照以上操作完成后,点击确定,就大功告成了.

  4. SpringMVC+FreeMarker实现静态资源文件自动添加版本号(md5)

    近日切换java开发,开始学习springframework.在实现静态资源文件自动计算版本号的实例时,因为不熟悉框架,走了不少弯路,好在最终解决了问题.这里写篇文章记录一下实现,也希望对大家有些用处 ...

  5. vim创建程序文件自动添加头部注释/自动文件头注释与模板定义

    Vim 自动文件头注释与模板定义 在vim的配置文件.vimrc添加一些配置可以实现创建新文件时自动添加文件头注释,输入特定命令可以生成模板. 使用方法 插入模式输入模式输入seqlogic[Ente ...

  6. 让vim不要自动添加新的注释行

    vim里面有一个特性,如果你在一行注释后新加一行,vim会自动在下一行的开始位置添加注释符号.例如对于C/C++来说   //This is a comment line //             ...

  7. vim自动添加tags、cscope

    每次打开一个工程都需要重新添加tags.cscope,很不方便,网上找了一下. 将其添加到 ~/.vimrc 中之后,打开 vim 就会自动搜索当前路径下的tags.cscope添加进去. 自动添加 ...

  8. vim 一键添加注释 自动添加文件头注释

    估计大家也都和我一样用过不少的编辑器,什么notepad2,emeditor,editplus,ultraedit,vs2005,sourceinsight,slickedit,emacs,vim(g ...

  9. (转)VIM 一键自动添加文件头注释

    通过修改VIM的配置文件.vimrc可以让Vim(gvim)支持自动添加作者信息,具体代码如下: "进行版权声明的设置 "添加或更新头 map <F4> :call T ...

随机推荐

  1. 要使用myConfig.properties配置文件作为实体类的映射文件的话,格式要用=,最关键的要和实例类中通过反射获取值的KEY要一样,不样会反射取不到值

    ABC=https://fsdfsdf.iy.comABCId=L2345345ZhP345ABCKey=sfdf4234f234dhE6Ut0aABCName=Gassd010 上面是myConfi ...

  2. 基于python Arcface 实现人脸检测和识别

    虹软的人脸识别技术也是很强的,重要的是他免费提供了离线的sdk,还提供了实例,这个是目前几家研究人脸识别的大公司里面少有的.识别能力正常用还是可以的.我这个代码是调用的离线sdk实现的 ``` fro ...

  3. 认识flask框架

    1.框架的基本认识: 特点:用Python语言实现的轻量.简洁.扩展性强. 核心:werkzeug和Jinja2 2.虚拟环境: 创建:mkvirtualenv -p python3 名称 进入:wo ...

  4. ubuntu vscode chrome 显示color emoji

    win10 下vscode默认就可以显示color emoji, 真是亲儿子啊. 但linux下默认是显示黑白的. 绕了一些弯路之后,发现最简单的办法是: 1 下载google noto字体全集    ...

  5. DataGrid的列上添加日期控件

    今天的使用EasyUI datagrid的时候,遇到了如下问题,如下图:

  6. Jmeter 接口测试知识梳理——应用基础篇

    Jmeter 使用也有很长时间了,但是一直没有做一下知识梳理,近期会对公司同事做一下这方面的培训,借此机会,把使用过程中应用到的知识,或是遇到的问题,整理出来,方便大家学习! Jmeter 接口测试知 ...

  7. Python Selenium 文件上传之Autoit

    今天补充一种文件上传的方法 主要是因为工作中使用SendKeys方法不稳定,具体方法见: Python Selenium 文件上传之SendKeys 这种方法直接通过命令行执行脚本时没有问题,可以成功 ...

  8. xlua 实现协程替换Unity中的协程

    C#中的协程: IEnumerator ShowSpiritInfo() { UIMessageMgr.ShowMsgWait(true); DestroyUIModelInfo(); bool is ...

  9. sublime text---注释

    Sublime在进行前端开发时非常棒,当然也少不了众多的插件支持,DocBlocker是在Sublime平台上开发一款自动补全代码插件,支持JavaScript (including ES6), PH ...

  10. 从fasta中提取或者过滤掉多个序列

    Google了一下,现成的工具不多. 自己写代码也可以,就是速度肯定不快,而且每次写也很麻烦. 偶然看到QIIME的filter_fasta.py有这个功能,从name list中提取多个序列. fi ...