1. #!/usr/bin/env python
  2. infile = file("in.mp3","rb")
  3. outfile = file("out.txt","wb")
  4. def main():
  5. while 1:
  6. c = infile.read(1)
  7. if not c:
  8. break
  9. outfile.write(hex(ord(c)))
  10. outfile.close()
  11. infile.close()
  12. if __name__ == '__main__':
  13. main()

下面是我自己改过的

  1. #coding:utf-8
  2. # 程序目标,读取1.bmp,然后以16进制方式写到txt文件
  3.  
  4. def main():
  5. f = open("1.bmp","rb")
  6. outfile = open("out.txt","wb")
  7. i = 0
  8. while 1:
  9. c = f.read(1)
  10. i = i + 1
  11. if not c:
  12. break
  13. if i%32 == 0:
  14. outfile.write("\n")
  15. else:
  16. if ord(c) <= 15:
  17. outfile.write("0x0"+hex(ord(c))[2:]+" ")
  18. else:
  19. outfile.write(hex(ord(c))+" ")
  20. outfile.close()
  21. f.close()
  22.  
  23. if __name__=="__main__":
  24. main()

效果如下:

当然,我需要的是真正的十六进制值。然后代码变成了这样

  1. #coding:utf-8
  2. # 程序目标,读取1.bmp,然后以16进制方式写到txt文件
  3.  
  4. def main():
  5. f = open("1.bmp","rb")
  6. outfile = open("out.txt","wb")
  7. i = 0
  8. while 1:
  9. c = f.read(1)
  10. i = i + 1
  11. if not c:
  12. break
  13. if i%32 == 0:
  14. outfile.write("\n")
  15. else:
  16. if ord(c) <= 15:
  17. outfile.write(("0x0"+hex(ord(c))[2:])[2:]+" ")
  18. else:
  19. outfile.write((hex(ord(c)))[2:]+" ")
  20. outfile.close()
  21. f.close()
  22.  
  23. if __name__=="__main__":
  24. main()

文件的数据变成了

python 读取文件、并以十六进制的方式写入到新文件的更多相关文章

  1. 文件的三种打开方式及with管理文件上下文

    文件的三种打开方式及with管理文件上下文 一.文件的三种打开方式 1.1 只读 f = open(r'D:\pycharm\yjy\上海python学习\456.txt','r',encoding= ...

  2. 监控文件内容变化,即时写入到新文件(tail)

    监控文件a,如有新内容写入,即时将新内容写入到新文件aa中: fw=open('e:\\aa.txt','ab') with open('e:\\a.txt','rb') as fo: while T ...

  3. 按行读取.txt文件,并按行写入到新文件中

    package com.test.io; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.Fi ...

  4. python从命令窗口启动脚本 创建并写入内容到文件示例

    写入到文件示例: #!/usr/bin/env python3 from math import exp, log, sqrt import re from datetime import date, ...

  5. [C/C++][文件操作] 对比目录并列出同名较新文件、较旧文件 0.1

    主要是模仿robocopy的部分功能 (robocopy /L 参数可以列出本地目录和备份目录中的异同之处,主要是标记出:较新的.较旧的.多出的文件 ) 现在还不会写GUI,打算后面自己做目录树dif ...

  6. SparkStreaming python 读取kafka数据将结果输出到单个指定本地文件

    # -*- coding: UTF-8 -*- #!/bin/env python3 # filename readFromKafkaStreamingGetLocation.py import IP ...

  7. python读取绝对路径的三种方式

    import pandas as pd dood_inf0=pd.read_csv("C:\\Users\\Administrator\\Desktop\\food_info.csv&quo ...

  8. Node.js读取某个目录下的所有文件夹名字并将其写入到json文件

    针对解决的问题是,有些时候我们需要读取某个文件并将其写入到对应的json文件(xml文件也行,不过目前用json很多,json是主流). 源码如下:index.js var fs = require( ...

  9. CMD批处理把txt文本中的每行写入一个新文件,第一列作文件名

    需求 现在有一个文件格式如图 ID 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17001 89.84 8.87 1.29 -0.0 0.0 68.99 0.0 0. ...

随机推荐

  1. 函数式编程工具:filter和reduce

    # -*- coding: utf-8 -*- #python 27 #xiaodeng #函数式编程工具:filter和reduce #python内置函数中,map函数是用来进行函数式编程这类工具 ...

  2. C语言printf

    1.调用格式为  printf("<格式化字符串>", <参量表>); 其中格式化字符串包括两部分内容: 一部分是正常字符, 这些字符将按原样输出; 另一部 ...

  3. 【QRcode二维码】:使用JS前端插件QRcode.js生成二维码

    1.先简单说一下jquery-qrcode,这个开源的三方库(可以从https://github.com/jeromeetienne/jquery-qrcode 获取), qrcode.js 是实现二 ...

  4. PHP关于进程池的优化

    本文打算从另一个角度来讨论问题,教大家如何配置高效的环境,如此同样能够达到优化的目的. pool 一个让人沮丧的消息是绝大多数 PHP 程序员都忽视了池的价值.这里所说的池可不是指数据库连接池之类的东 ...

  5. PHP-线程安全与非线程安全版本的区别

    Windows版的PHP从版本5.2.1开始有Thread Safe(线程安全)和None Thread Safe(NTS,非线程安全)之分,这两者不同在于何处?到底应该用哪种?这里做一个简单的介绍. ...

  6. window.postMessage实现网页间通信

    window.postMessage() 方法可以安全地实现跨域通信.通常,对于两个不同页面的脚本,只有当执行它们的页面位于具有相同的协议(通常为https),端口号(443为https的默认值),以 ...

  7. sudo: Cannot execute /usr/local/bin/zsh: No such file or directory 问题

    参考:sudo: Cannot execute /usr/local/bin/zsh: No such file or directory 之前在美化Ubuntu的时候,下了个zsh,但是忘记改配置文 ...

  8. VSCode调试Html中的脚本 vscode前端常用插件推荐,搭建JQuery、Vue等开发环境 vsCode 添加浏览器调试和js调试的方法总结 VS Code - Debugger for Chrome调试js

    一.背景 使用Visual Studio Code写了一个简单的Html页面,想调试下其中script标签里的javascript代码,网上查了一通,基本都是复制粘贴或者大同小异的文章,就是要安装De ...

  9. win7 下jenkins配置与使用

    一.Jenkins的配置 1. 下载地址: Jenkins的官方网站:http://jenkins-ci.org/ 目前最新版本的Windows版:http://mirror.xmission.com ...

  10. asp.net 在线解压缩文件类

    using System; using System.Collections.Generic; using System.Text; using System.IO; using Microsoft. ...