第一部分:写入xlsx中 使用POI创建一个xlsx文件: 项目结构如下: 具体使用的POI中的 XSSFWorkbook   xlsx对象 Sheet 工作簿对象 Row 行对象 Cell  单元格对象 FileOutputStream   流对象 代码如下: package com.it.poiTest; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOExcept…
数据对齐,是指数据所在的内存地址必须是该数据长度的整数倍.DWORD数据的内存起始地址能被4除尽,WORD数据的内存起始地址能被2除尽.X86 CPU能直接访问对齐的数据,当它试图访问一个未对齐的数据时,会在内部进行一系列的调整.这些调整对于程序员来说是透明的,但是会降低运行速度,所以编译器在编译程序时会尽量保证数据对齐. 不同的编译器内存对齐的方式不同. 一个小例子:在32位的机器上,数据是以4字节为对齐单位,这两个类的输出结果为什么不同?(VS2008) #include <iostream…
$file='./new.txt'; $fp = fopen($file, "r"); $chunk = 4096;//一次处理1M的字节 1M=1024*1024 $fs = filesize($file); //$max = ($fs == PHP_INT_MAX) ? PHP_INT_MAX : filesize($file); $readData =''; for ($len = 0; $len < $max; $len += $chunk) { $seekSize =…
数据库内容太多,复制粘贴太麻烦?那就用代码实现把,把代码写好了,导出还不容易吗,访问即可导出. excel.php <?php error_reporting(E_ALL ^ E_DEPRECATED); $localhost = '数据库地址'; $dbname = '数据库名'; $dbuser = '数据库账号'; $dbpwd = '数据库密码'; $tbname = "需要导出的数据库表名"; ob_end_clean(); header('Content-type:…
<?php function Compare($str1, $str2) { if (($str1 % 2 == 0) && ($str2 %2 == 0)) { if ($str1 > $str2) return - 1; else return 1; } if ($str1 % 2 == 0) return 1; if ($str2 % 2 == 0) return -1; return ($str2 > $str1) ? 1 : - 1; } $scores = a…
问题描述:给一个5G的大文件,保存的数据为32位的整型,找到所有出现次数超过两次的数字 大数据操作: 解决方法一: 依次遍历文件数据, 开始32二进制清0 每次读取一个数,先和二进制位与,如果为0 则没有,再把数字与二进制数位或.如果为1,则输出这个数 直到读取文件最后一个数字 举例说明: 0000 0000 0000 0000 0000 0000 0000 0000 开始的二进制位 倘若第一个数为2 那么0000 0000 0000 0000 0000 0000 0000 0010  开始位与…
方法一:可以通过生成器,分多次读取,每次读取数量相对少的数据(比如 500MB)进行处理,处理结束后在读取后面的 500MB 的数据. 方法二:可以通过 linux 命令 split 切割成小文件,然后再对数据进行处理,此方法效率比较高.可以按照行数切割,可以按照文件大小切割.…
孤荷凌寒自学python第三十七天python的文件与内存变量之间的序列化与反序列化 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 一.什么是序列化与反序列化 序列化是指将内存中的数据进行指定规则的格式梳理,使之方便按一定格式保存到文件中.我的理解就是数据在文件中的保存的结构. 反序列化是指将磁盘中文件的保存的结构读取出来,然后转换为内存中的数据,并且可以在屏幕上输出为人可阅读的格式内容. 二.pickle模块 pickle模块是Python 内置的序列化与反序列化类,保存到文件时,是…
交换区域(Swap Area)有什么作用? 交换分区是操作系统在内存不足(或内存较低)时的一种补充.通俗的说,如果说内存是汽油,内存条就相当于油箱,交换区域则相当于备用油箱. Ubuntu Linux安装时可以在磁盘上划出一个分区用作内存交换区域.文件则介绍如何使用文件作为内存交换区域.这两种方法在使用效果上没有太大区别,但文件可以在分区之后创建,且调整大小更容易,所以这种方案更加灵活. 本文在Ubuntu上试验成功,在其他发行版操作类似. 原文地址:https://www.howtoforge…
大家知道enode框架的架构是基于ddd+event sourcing的思想.我们持久化的不是聚合根的最新状态,而是聚合根产生的领域事件.最近我在思考如何实现一个基于文件的eventstore.目标有两个: 1.必须要高性能:2.支持聚合根事件的并发持久化,要确保单个聚合根实例不会保存版本号相同的事件: 事件持久化高性能 经过了一番调研,发现用文件存储事件非常合适.要确保高性能,我们可以顺序写文件(append),然后随机读文件.之所以要随机读文件是因为在当某些command由于操作同一个聚合根…