excel round、rounddown、roundup

excel round、rounddown、roundup round、rounddown、roundup三个函数应用的区别。 round函数: 按指定位数对数字进行四舍五入。如输入=round(3.158,2) 则会出现数字3.16,即按两位小数进行四舍五入。rounddown: 按指定位数舍去数字指定位数后面的小数。如输入=rounddown(3.158,2) 则会出现数字3.15,将两位小数后的数字全部舍掉了。 roundup: 按指定位数向上舍入指定位数后面的小数。如输入=roundup(3.158,2) 则会出现数字3.16,将两位小数后的数字舍上去,除非其后为零。 注: 其中的3.158可更改为单元格如A1,小数位数也可自行更改。其他的可以照搬。

2012-09-17 · 1 min · 13 words · -

excel 函数

’excel 函数' 判断相等 sum 函数是求和函数。它是excel函数中最为常用的函数之一,sum函数分别出现在数学函数、全部函数两个类别中,默认的"常用函数"中也有。 sum函数的语法形式为: sum(number1,number2, …) sum函数的注意事项: 函数的语法中number1,number2等参数,最多有30个; 函数的语法中number1,number2等参数,既可以是数字 (例1) ,也可以是逻辑值 (例3) ,也可以是表达式 (例3) ,也可以是单元格名称,也可以是连续单元格的集合 (例2) ,也可以是单元格区域名称,并且以上所列类别将会被计算; 如果number1等参数为单元格名称、连续单元格集合、单元格区域名称则只计算其中的数值和函数公式数值结果部分,不计算逻辑值、表格中的文字表达式 (例4) ; sum函数示例: 样表 A 1 3 2 1 3 1+2 4 (1+2=3) 5 3d 上表中A为列号,左侧1-5为行号。 若在A6单元格输入以下公式的结果: 例1、=sum(1,2,3) 结果为6,计算1、2、3三个数字的和; 例2、=sum(a1:a2) 结果为4,计算a1到a2单元格之和; 例3、=sum((1+2=3),(1+2),(a1:a2) 结果为8,因为(1+2=3)表达式的结果为真,在电脑中的结果为1,1+2表达式的结果3会被计算,a1到a2单元格之和4会被计算,所以最后的结果为8; 例4、=sum(a1:a5) 结果为4,不计算引用单元格中的文字表达式 (1+2) 、逻辑表达式 ((1+2=3)) 、不计算字符; 本文是 有图博客 原创,原地址 http://www.utosee.com/excel/sum.html 转载请保留。

2012-09-17 · 1 min · 54 words · -

jodatime date

jodatime date function currentTime(){ var d = new Date(),str = “; str += d.getFullYear()+‘年’; str += d.getMonth() + 1+‘月’; str += d.getDate()+‘日’; str += d.getHours()+‘时’; str += d.getMinutes()+‘分’; str+= d.getSeconds()+‘秒’; return str; }

2012-09-16 · 1 min · 33 words · -

java List 排序 Collections.sort() 对 List 排序

java List 排序 Collections.sort() 对 List 排序 java.util.Comparator 接口。要实现里面的函数 int compare(Object o1, Object o2) 返回一个基本类型的整型,返回负数表示o1 小于o2,返回0 表示o1和o2相等,返回正数表示o1大于o2。 class User { String name; String age; public User(String name,String age){ this.name=name; this.age=age; } public String getAge() { return age; } public void setAge(String age) { this.age = age; } public String getName() { return name; } public void setName(String name) { this.name = name; } } //具体的比较类,实现Comparator接口 import java.util.Comparator; import java.util.List; import java.util.ArrayList; import java.util.Collections; public class ComparatorUser implements Comparator{ public int compare(Object arg0, Object arg1) { User user0=(User)arg0; User user1=(User)arg1; //首先比较年龄,如果年龄相同,则比较名字 int flag=user0.getAge().compareTo(user1.getAge()); if(flag==0){ return user0.getName().compareTo(user1.getName()); }else{ return flag; } } } //测试类 public class SortTest { public static void main(String[] args){ List userlist=new ArrayList(); userlist.add(new User("dd","4″)); userlist.add(new User("aa","1″)); userlist.add(new User("ee","5″)); userlist.add(new User("bb","2″)); userlist.add(new User("ff","5″)); userlist.add(new User("cc","3″)); userlist.add(new User("gg","6″)); ComparatorUser comparator=new ComparatorUser(); Collections.sort(userlist, comparator); for (int i=0;i<userlist.size();i++){ User user_temp=(User)userlist.get(i); System.out.println(user_temp.getAge()+","+user_temp.getName()); } } } //首先年龄排序,如果年龄相同,则按名字排序 "\`java 结果: 1, aa 2, bb 3, cc 4, dd 5, ee //注意:同样是5岁的人,则比较名字(ee,ff),然后排序 5, ff 6, gg http://www.blogjava.net/zygcs/archive/2008/01/17/176032.html http://muscle-liu.iteye.com/blog/157261

2012-09-16 · 1 min · 162 words · -

公有云安装 archlinux, Aliyun/阿里云 ecs, bwg KVM

aliyun ecs, 阿里云安装 archlinux aliyun vm 安装 非 EFI 的镜像 cd /tmp curl -O http://mirrors.163.com/archlinux/iso/2024.04.01/archlinux-bootstrap-2024.04.01-x86_64.tar.gz tar zxvf archlinux-bootstrap-xxx.tar.gz # 要用 mount --bind 把 RootFS 解包的目录自己与自己链接起来,不然 pacman 会装不了软件 sudo mount --bind /tmp/root.x86_64 /tmp/root.x86_64 # edit mirror list vim /tmp/root.x86_64/etc/pacman.d/mirrorlist # chroot /tmp/root.x86_64/bin/arch-chroot /tmp/root.x86_64/ # 初始化 pacman 的密钥 pacman-key --init pacman-key --populate archlinux # 把 原系统的 根目录 / 挂载到 /mnt # 先 df -h 看一下 根目录在哪个分区 mount /dev/vdaX /mnt # 保留的目录 /dev /proc /run /sys /tmp , 这些目录都是存储到硬件的映射的,所以不能删 # boot 目录有可能会删除失败 rm -rf /mnt/boot rm -rf /mnt/bin rm -rf /mnt/data rm -rf /mnt/etc rm -rf /mnt/home rm -rf /mnt/lib rm -rf /mnt/lib32 rm -rf /mnt/lib64 rm -rf /mnt/libx32 rm -rf /mnt/media rm -rf /mnt/mnt rm -rf /mnt/opt rm -rf /mnt/root rm -rf /mnt/sbin rm -rf /mnt/srv rm -rf /mnt/usr rm -rf /mnt/var pacstrap /mnt base linux linux-firmware genfstab -U /mnt >> /mnt/etc/fstab arch-chroot /mnt ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime echo 'nameserver 114.114.114.114' >> resolv.conf pacman -S gvim openssh grub sudo neofetch python echo 'aliyun0' > /etc/hostname echo '127.0.0.1 localhost' >> /etc/hosts echo '127.0.0.1 aliyun0' >> /etc/hosts systemctl enable systemd-networkd systemctl enable systemd-resolved systemctl enable sshd vim /etc/systemd/network/eth.network [Match] Name=en* [Network] DHCP=ipv4 [DHCPv4] UseHostname=false useradd -m wiloon passwd wiloon passwd root echo 'wiloon ALL=(ALL) NOPASSWD: ALL' > /etc/sudoers.d/wiloon.conf grub-install --target=i386-pc /dev/vda grub-mkconfig -o /boot/grub/grub.cfg reboot timedatectl set-ntp true -` root@aliyun0 .o+` ------------ `ooo/ OS: Arch Linux x86_64 `+oooo: Host: Alibaba Cloud ECS pc-i440fx-2.1 `+oooooo: Kernel: 6.8.7-arch1-1 -+oooooo+: Uptime: 6 mins `/:-:++oooo+: Packages: 254 (pacman) `/++++/+++++++: Shell: bash 5.2.26 `/++++++++++++++: Resolution: 1024x768 `/+++ooooooooooooo/` Terminal: /dev/pts/0 ./ooosssso++osssssso+` CPU: Intel Xeon Platinum 8269CY (2) @ 2.500GHz .oossssso-````/ossssss+` GPU: 00:02.0 Cirrus Logic GD 5446 -osssssso. :ssssssso. Memory: 93MiB / 422MiB :osssssss/ osssso+++. /ossssssss/ +ssssooo/- `/ossssso+/:- -:/+osssso+- `+sso+:-` `.-/+oso: `++:. `-/+/ .` `/ https://limelight.moe/t/topic/6007 https://www.scarletdrop.cn/archives/14 ...

2012-09-16 · 2 min · 305 words · -

Spring中bean的作用域

Spring中bean的作用域 http://blog.csdn.net/ProvidenceZY/article/details/1878582 如何使用spring的作用域: <bean id="role" class="spring.chapter2.maryGame.Role" scope="singleton"/> 这里的scope就是用来配置spring bean的作用域,它标识bean的作用域。 在spring2.0之前bean只有2种作用域即: singleton(单例)、non-singleton (也称prototype) , Spring2.0以后,增加了session、request、global session三种专用于Web应用程序上下文的Bean。因此,默认情况下Spring2.0现在有五种类型的Bean。当然,Spring2.0对Bean的类型的设计进行了重构,并设计出灵活的Bean类型支持,理论上可以有无数多种类型的Bean,用户可以根据自己的需要,增加新的Bean类型,满足实际应用需求。 1、singleton作用域 当一个bean的作用域设置为singleton, 那么Spring IOC容器中只会存在一个共享的bean实例,并且所有对bean的请求,只要id与该bean定义相匹配,则只会返回bean的同一实例。换言之,当把一个bean定义设置为singleton作用域时,Spring IOC容器只会创建该bean定义的唯一实例。这个单一实例会被存储到单例缓存 (singleton cache) 中,并且所有针对该bean的后续请求和引用都将返回被缓存的对象实例,这里要注意的是singleton作用域和GOF设计模式中的单例是完全不同的,单例设计模式表示一个ClassLoader中只有一个class存在,而这里的singleton则表示一个容器对应一个bean,也就是说当一个bean被标识为singleton时候,spring的IOC容器中只会存在一个该bean。 配置实例: <bean id="role" class="spring.chapter2.maryGame.Role" scope="singleton"/> 或者 <bean id="role" class="spring.chapter2.maryGame.Role" singleton="true"/> 2、prototype prototype作用域部署的bean,每一次请求 (将其注入到另一个bean中,或者以程序的方式调用容器的getBean()方法) 都会产生一个新的bean实例,相当与一个new的操作,对于prototype作用域的bean,有一点非常重要,那就是Spring不能对一个prototype bean的整个生命周期负责,容器在初始化、配置、装饰或者是装配完一个prototype实例后,将它交给客户端,随后就对该prototype实例不闻不问了。不管何种作用域,容器都会调用所有对象的初始化生命周期回调方法,而对prototype而言,任何配置好的析构生命周期回调方法都将不会被调用。清除prototype作用域的对象并释放任何prototype bean所持有的昂贵资源,都是客户端代码的职责。 (让Spring容器释放被singleton作用域bean占用资源的一种可行方式是,通过使用bean的后置处理器,该处理器持有要被清除的bean的引用。) 配置实例: <bean id="role" class="spring.chapter2.maryGame.Role" scope="prototype"/> 或者 <beanid="role" class="spring.chapter2.maryGame.Role" singleton="false"/> 3、request request表示该针对每一次HTTP请求都会产生一个新的bean,同时该bean仅在当前HTTP request内有效,配置实例: request、session、global session使用的时候首先要在初始化web的web.xml中做如下配置: 如果你使用的是Servlet 2.4及以上的web容器,那么你仅需要在web应用的XML声明文件web.xml中增加下述ContextListener即可: <web-app> … org.springframework.web.context.request.RequestContextListener … ...

2012-09-16 · 1 min · 191 words · -

MSVC, MinGW, GNU

MSVC, MinGW, GNU Qt 中有两种方式编译,一种是MinGW ,另一种MSVC。 MSVC 是指微软的VC编译器。 MinGW 是指是Minimalist GNU on Windows的缩写。它是一个可自由使用和自由发布的Windows特定头文件和使用GNU工具集导入库的集合,允许你在GNU/Linux和Windows平台生成本地的Windows程序而不需要第三方C运行时库。 它们都是很好用的编译工具,但是它们兼容的并不好。当你的项目使用MinGW编译的使用,想要用一个MSVC编译生成的库时就会有问题。使用MinGW编译项目的时候,所使用的Lib也要是MinGW编译的。如果你只是开发Window平台的软件时,最好用Qt MSVC组合,这样可以使用大量的第三方lib,还有很多的构建指令,毕竟window上MSVC才是王道。 ———————————————— 版权声明:本文为CSDN博主「自先沉稳~」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/error_again/article/details/109765184 GNU VS. MSVC winget search rust Rust (MSVC) Rusr (GNU) The GNU toolchain uses the MinGW build tools (mostly the linker) and produces binaries that use the GNU ABI. The MSVC toolchain uses the Visual Studio build tools and produces binaries that use the Microsoft ABI, making them more compatible with most other Windows binaries/libraries. ...

2012-09-15 · 1 min · 76 words · -

java 线程 sleep, wait, join, yield

java 线程 sleep, wait, join, yield wait() 调用该方法的线程进入 WAITING 状态,只有等待另外线程的通知或被中断才会返回,需要注意, 调用wait()方法后,会释放对象的锁。 wait(long) 超时等待一段时间,这里的参数是毫秒,也就是等待长达n毫秒,如果没有通知就超时返回。 wait(long, int) 对于超时时间更细粒度的控制,可以达到毫秒。 Thread.sleep(3000); TimeUnit.SECONDS.sleep(random.nextInt(10)); this.wait(2000); sleep sleep 是 Thread 类的静态方法, sleep() 使当前线程进入停滞状态 (阻塞当前线程), 让出CUP的使用、目的是不让当前线程独自霸占该进程所获的CPU资源,以留一定时间给其他线程执行的机会; Thread.sleep 不会导致锁行为的改变,如果当前线程是拥有锁的,那么Thread.sleep不会让线程释放锁。 所以当在一个 Synchronized 块中调用 Sleep() 方法时,线程虽然休眠了,但是对象的锁并没有被释放,其他线程无法访问这个对象 (即使睡着也持有对象锁) 。 在 sleep() 休眠时间期满后,该线程不一定会立即执行, 这是因为其它线程可能正在运行而且没有被调度为放弃执行,除非此线程具有更高的优先级。 如果能够帮助你记忆的话,可以简单认为和锁相关的方法都定义在 Object 类中,因此调用 Thread.sleep 是不会影响锁的相关行为。 wait() 方法是 Object 类里的方法; 当一个线程执行到 wait() 方法时,它就进入到一个和该对象相关的等待池中,同时失去 (释放) 了对象的锁 (暂时失去锁,wait(long timeout)超时时间到后还需要返还对象锁) wait() 使用 notify 或者 notifyAll 或者指定睡眠时间来唤醒当前等待池中的线程。 wiat() 必须放在 synchronized block 中,否则会在 program runtime 时扔出 “java.lang.IllegalMonitorStateException” 异常。 ...

2012-09-14 · 5 min · 884 words · -

kvm 虚拟机 vnc 开启音频 +rdp

kvm虚拟机vnc开启音频+rdp 为了方便使用virt-manager来创建和管理kvm的虚拟机。默认创建好的windows xp虚拟机,用vnc连接的时候会没有声音,用rdesktop连接的时候声音是正常的。 查了一些发行版的bugzilla,发现相关的bug还真有不少,在fedora的wiki上找到了解决方法 (原始链接在这里) : 修改/etc/libvirt/qemu.conf文件中的vnc_allow_host_audio为1,然后重启libvirtd服务,就OK了。不过这样设置以后,即使不打开virt-manager的vnc客户端,也能够听到虚拟机中发出的声音。 If you have a Linux computer and sound is working on it, then you will be able to get sound through rdesktop. But it’s not necessary easy, unless you are aware that there is a bug that prevents it. Good news is that there is a really simple work-around to make sound work. To get sound to work through rdesktop, first make sure Windows is configured to pass sound through Remote Desktop. Open up “Control Panel” -> “Sounds and Audio Devices”. You should see “Microsoft RDP Audio Driver”. Next, if the “Device volume” is set to “Low”, it is either because: 1) sound pass-through is not enabled; or 2) you reduced the volume to “Low”. Try fixing #2 by moving the slider to “High”, then click the “Apply” button. If the slider stays at “High”, then it’s #2 and you should now have sound. If the slider jumps back to “Low” then it’s #1 (continue to next paragraph). ...

2012-09-13 · 2 min · 336 words · -

archlinux vm template

archlinux vm template archlinux openssh systemctl enable sshd python vim ssh-key, ed25519 neovim ncdu

2012-09-13 · 1 min · 14 words · -

XMLHttpRequest, XHR

XMLHttpRequest, XHR XMLHttpRequest可以提供不重新加载页面的情况下更新网页,在页面加载后在客户端向服务器请求数据,在页面加载后在服务器端接受数据,在后台向客户端发送数据。XMLHttpRequest 对象提供了对 HTTP 协议的完全的访问,包括做出 POST 和 HEAD 请求以及普通的 GET 请求的能力。XMLHttpRequest 可以同步或异步返回 Web 服务器的响应,并且能以文本或者一个 DOM 文档形式返回内容。尽管名为 XMLHttpRequest,它并不限于和 XML 文档一起使用: 它可以接收任何形式的文本文档。XMLHttpRequest 对象是名为 AJAX 的 Web 应用程序架构的一项关键功能。 浏览器支持 XMLHttpRequest 得到了所有现代浏览器较好的支持。唯一的浏览器依赖性涉及 XMLHttpRequest 对象的创建。在 IE 5 和 IE 6 中,必须使用特定于 IE 的 ActiveXObject() 构造函数。正如在 XMLHttpRequest 对象 这一节所介绍的。 W3C 标准化 XMLHttpRequest 对象还没有标准化,但是 W3C 已经开始了标准化的工作,本手册介绍的内容都是基于标准化的工作草案。 当前的 XMLHttpRequest 实现已经相当一致。但是和标准有细微的不同。例如,一个实现可能返回 null,而标准要求是空字符串,或者实现可能把 readyState 设置为 3 而不保证所有的响应头部都可用。 readyState HTTP 请求的状态.当一个 XMLHttpRequest 初次创建时,这个属性的值从 0 开始,直到接收到完整的 HTTP 响应,这个值增加到 4。 状态 名称 描述 Uninitialized 初始化状态。XMLHttpRequest 对象已创建或已被 abort() 方法重置。 1 Open open() 方法已调用,但是 send() 方法未调用。请求还没有被发送。 2 Send Send() 方法已调用,HTTP 请求已发送到 Web 服务器。未接收到响应。 3 Receiving 所有响应头部都已经接收到。响应体开始接收但未完成。 4 Loaded HTTP 响应已经完全接收。 5 个状态中每一个都有一个相关联的非正式的名称,下表列出了状态、名称和含义: ...

2012-09-09 · 1 min · 173 words · -

JAVA操作——获取文件扩展名,去掉文件扩展名

JAVA操作——获取文件扩展名,去掉文件扩展名 http://blog.csdn.net/redoffice/article/details/6652731 /* * Java文件操作 获取文件扩展名 * * Created on: 2011-8-2 * Author: blueeagle */ public static String getExtensionName(String filename) { if ((filename != null) && (filename.length() > 0)) { int dot = filename.lastIndexOf('.'); if ((dot >-1) && (dot < (filename.length() - 1))) { return filename.substring(dot + 1); } } return filename; } /* * Java文件操作 获取不带扩展名的文件名 * * Created on: 2011-8-2 * Author: blueeagle */ public static String getFileNameNoEx(String filename) { if ((filename != null) && (filename.length() > 0)) { int dot = filename.lastIndexOf('.'); if ((dot >-1) && (dot < (filename.length()))) { return filename.substring(0, dot); } } return filename; }

2012-09-04 · 1 min · 101 words · -

java遍历目录及子目录下的文件

java遍历目录及子目录下的文件 http://blog.csdn.net/suncheng_hong/article/details/1671632 package com.daacc.common; import java.io.File; public class FileManager { String dir = ""; String temp = ""; public String[] serachFiles(String dir) { File root = new File(dir); File[] filesOrDirs = root.listFiles(); String[] result = new String[10]; for (int i = 0; i < filesOrDirs.length; i++) { if (filesOrDirs[i].isDirectory()) { serachFiles(filesOrDirs[i].getAbsolutePath()); } else { result[i] = filesOrDirs[i].getName(); temp += filesOrDirs[i].getName() + ","; } } return temp.split(","); } /** * @param args */ public static void main(String[] args) { FileManager fm = new FileManager(); String[] files = fm.serachFiles("D:/abc"); for (int i = 0; i < files.length; i++) { System.out.println("files[" + i + "]" + files[i]); } } }

2012-09-04 · 1 min · 107 words · -

Emacs的缓冲区(Buffers)、窗口(Windows)和框架(Frames)

Emacs的缓冲区(Buffers)、窗口(Windows)和框架(Frames) 概念上,Emacs在两个方面有别于一般程序。首先,“窗口"的概念不同。其次,Emacs的"缓冲区"是脱离窗口或框架独立存在的。 (Emacs里的frame相当于Microsoft Windows的window概念。A frame can show several windows, each showing a buffer.) 1 窗口与框架 我们所看到的Emacs"窗口"并非Emacs的窗口,而是Emacs的图形窗口框架(GUI windows frames)。理解这个概念是必须的,因为在未有图形化窗口之前,Emacs已经可以在"终端"运行了,用Windows的术语来说,就是"控制台"程序。看看下面的图,就明白了。 1.1 缓冲区,独立于窗口与框架之外 本质上,窗口和框架只是显示缓冲区内容的工具。缓冲区内可以包含文件内容,可以是Emacs内部自定义的,譬如*Messages*,*scratch*,或*help*等,也可以是用户自定制而其中内容未写入文件的。 许多图形界面的应用程序是将图形窗口 (Emacs中称之为Frames)与一些文件紧密联系在一起的,而Emacs的将缓冲区与图形窗口分离的方式是强大又灵活的。实际上,我们在大部分时间里宁愿使用一个Emacs Frame,而使用C-x b来切换缓冲区,这要比在多个Frame中采用鼠标切换或采用切分窗口等方式更容易,尽管它们在一些情况下存有优点。 1.2 更深入地了解缓冲区 你知道该怎样获知Emacs中开了几个缓冲区及它们的详细信息吗?有三种方法可以实现: C-x C-b,显示缓冲区列表; 缓冲区菜单,列举了打开的缓冲区以及导向它们的快捷命令; 在Emacs的窗口中,摁下Ctrl键,点击鼠标左键,可以弹出缓冲区列表。 Emacs自行定义了一些缓冲区,它们的名字,通常是像*buffername*,*help*,*scratch*这样的格式,并且缓冲区列表本身就是Emacs自定义的缓冲区,如下图: 当你启动Emacs的时候,会产生*Messages*和*scratch*两个缓冲区。*Messages*是用来显示从Emacs启动开始的所有命令信 息的缓冲区,*scratch*是草稿缓冲区,你可以在其中乱写东西,但不会被保存,除非用户使用C-x C-W命令。 在用户使用 Emacs编辑文件时,所读取的文件会被复制到同名的缓冲区内。如果用户需要帮助,那么也可以打开*help*缓冲区。可打开的缓冲区的数量是没有限制 的。大部分时间,仅有一两个缓冲区被显示,还有好多即使你没看到,但它们也是存在的。你可以把缓冲区想象为一堆页面,其中仅有一页是当前页,你可以切换到 令一页,或者创建新页。每个缓冲区都关联一个主模式,它决定了在该缓冲区内,Emacs的行为。譬如,text模式,被设计为书写文档的;Lisp模式, 是用于书写Lisp程序的。用户可以在一个Emacs窗口或框架中显示多个缓冲区,要紧是记住你创建的所有缓冲区。 2 在多缓冲区模式下工作 如果你想创建一个包含文件内容的缓冲区,可以C-x C-f,Emacs会自动创建一个缓冲区并将你带入其中。如果你已经在一个缓冲区打开了这份文件的副本, 那么C-x C-f会把你带入那个已存在的缓冲区中,在此请仔细体会一下,Emacs给你带来的好处吧!而如果你要打开的文件不存在,Emacs会为你创建 一个新文件的缓冲区,并将你带入其中。 请记住: C-x C-f是打开一个文件,该命令后总是跟随这目录/文件名的,如果要打开的文件不存在,就创建新文件。 2.1 切换缓冲区 你有意识到模式行并不显示文件名,而仅仅显示缓冲区名吗?其他一些版本的Emacs可以两个名字都显示,但GNUEmacs只显示缓冲区名,这是因为通常情况下,文件名和缓冲区名是一致的,除非你去修改它们。 要在不同缓冲区之间移动,就C-x b吧。Emacs会给你提供一个默认的最近隐掉的缓冲区名,回车就可以进入。或者输入你想进入的缓冲区名字的前几个字,然后摁Tab键,Emacs会自动为你补全缓冲区名,回车进入即可。 请记住: C-x,b之后则跟随一个缓冲区的名字。如果相应缓冲区不存在,Emacs会自动创建一个新的空缓冲区,与C-x C-f的不同之处是,新建的缓冲区不与文件关联,在退出Emacs时,Emacs不会提醒你要保存缓冲区。 查看已打开的缓冲区,还有以下两种可选方式: C-x C-b,这种方法可用于终端环境中的Emacs; 在Emacs窗口中,摁下Ctrl键,点击鼠标左键。该方法只对图形化的Emacs有效。 2.2 删除缓冲区 为什么要删除缓冲区? 你的Emacs中开的缓冲区太多了,想去掉几个; 对已有文档的修改具有灾难性,将这个缓冲区干掉就可以了。 要删除缓冲区,可键入C-x k,Emacs会显示当前被显示的缓冲区名,也可键入想删除的缓冲区的名字,然后回车。如果已与文件建立关联的缓冲区,内容有了 改动,Emacs会提示你保存一下。其他情况,则缓冲区就永远的消失了。而键入M-xkill-some-buffers可成批删除缓冲区,系统会一个一 个列举已存在的缓冲区,问你是不是把它kill掉,你只需要回答`yes’or`no’就可以了。当所有的缓冲区都被kill掉之后,Emacs不会屏幕空着的,它会创建一个新的*scratch*缓冲区。 ...

2012-09-03 · 1 min · 146 words · -

Parasoft Jtest

Parasoft Jtest http://www.parasoft.com/jsp/products/jtest.jsp> Parasoft Jtest is an integrated Development Testing solution for automating a broad range of practices proven to improve development team productivity and software quality. It focuses on practices for validating Java code and applications, and it seamlessly integrates with Parasoft SOAtest to enable end-to-end functional and load testing of today’s complex, distributed applications and transactions. Jtest facilitates: Static analysis — static code analysis, data flow static analysis, and metrics analysis Peer code review process automation—preparation, notification, and tracking Unit testing — JUnit and Cactus test creation, execution, optimization, and maintenance Runtime error detection — race conditions, exceptions, resource & memory leaks, security attack vulnerabilities, and more This provides teams a practical way to prevent, expose, and correct errors in order to ensure that their Java code works as expected. To promote rapid remediation, each problem detected is prioritized based on configurable severity assignments, automatically assigned to the developer who wrote the related code, and distributed to his or her IDE with direct links to the problematic code and a description of how to fix it. ...

2012-09-03 · 2 min · 232 words · -

IDEA JavaDoc

IDEA JavaDoc http://www.intellij.org.cn/bbs/viewtopic.php?t=1817&start=0 在类或者函数前输入 /** 然后回车,就可以生成啦。 Javadoc Sync plugin可以快速生成所有的注释,使用稍微麻烦点,步骤如下: 打开设置面板,选择inspection,然后找到"javadoc issues",选择相应的配置项 回到编辑窗口,会有警告提示,将光标置于类名上,按下Alt+Enter,选择生成javadoc就可以啦。 如果你想设置生成的javadoc内容,设置面板有一个javadoc sync settings,进行设置即可。

2012-09-02 · 1 min · 15 words · -

JAVA读文本文件

JAVA读文本文件 一行一行的读~~ public static void main(String[] args) throws Exception { FileReader reader = new FileReader("D:\url.txt"); BufferedReader br = new BufferedReader(reader); String s1 = null; while((s1 = br.readLine()) != null) { System.out.println(s1); } br.close(); reader.close(); }

2012-09-02 · 1 min · 35 words · -

Emacs24隐藏工具栏菜单栏和滚动条无效的问题

Emacs24隐藏工具栏菜单栏和滚动条无效的问题 http://blog.csdn.net/cherylnatsu/article/details/7663163 前不久发布了Emacs 24.1,下载下来编译安装后发现这样一个问题,以前旧的.emacs文件里明确设置了不显示工具栏菜单栏滚动条,但是它还是都显示了出来,旧的配置是这样的。 (tool-bar-mode nil) (menu-bar-mode nil) (scroll-bar-mode nil) 后来经过提醒才发现,新版这里已经不能用nil了,必须用0 改成: (tool-bar-mode 0) (menu-bar-mode 0) (scroll-bar-mode 0) 就好了。

2012-08-31 · 1 min · 19 words · -

tcp, quic

tcp, quic, 流量复制 tcp, quic @startuml [tcp client] as tc [tq] as tq note left: tcp server:2000 [qt] as qt note left: quic server: 2001 [tcp server] as ts note left: tcp server: 2002 tc --> tq tq --> qt qt --> ts @enduml t2q2t https://github.com/flano-yuki/t2q2t.git

2012-08-31 · 1 min · 46 words · -

设置Chrome以https方式访问指定网址

设置Chrome以https方式访问指定网址 1、打开Chrome,在地址栏键入 chrome://net-internals 回车 2、在HSTS选项卡下的Domain中输入你想要实现这个强制跳转的域名,如 google.com.hk 3、勾选上Include subdomains,这样可以确保指定网址的所有二级域名都被重定向到https。 4、点击Add按钮,完成。

2012-08-30 · 1 min · 9 words · -