try

《Python编程从入门到实践》学习笔记<10>:文件和异常

吃可爱长大的小学妹 提交于 2020-02-14 00:17:37
############################################################################################ #一些你必须要知道的概念 #1、异常是Python创建的特殊对象,用于管理程序运行时出现的错误, # 出现异常会显示一个traceback,其中包含异常日志 #2、json模块能够对字典进行处理,也能够保存数据 #3、函数open()用于打开文件,主要接收的参数是文件名 #4、重构是将代码进行进一步的划分,将其归纳为完成具体工作的函数,让带吗更加清晰、易于理解和扩展 ############################################################################################ #读取整个文件 #编辑文件pi_digits.txt,存放在tesxt_files目录中 #在windows中访问tesxt_files目录中的文件,需要在文件路径后面加反斜杠,后跟文件名即可 #若文件与程序所在目录一致,也可以不加文件路径 #在linux下文件路径的反斜杠需改成正斜杠 #函数open()用于打开文件 #关键字with用于在不需要访问文件后将其关闭 #as用于起别名,file_object既是别名 #read()方法用于文件读取

Excel操作 Microsoft.Office.Interop.Excel.dll的使用

ぐ巨炮叔叔 提交于 2020-02-13 10:30:54
转自: https://www.cnblogs.com/lanjun/archive/2012/06/17/2552920.html 先说说题外话,前段时间近一个月,我一直在做单据导入功能,其中就涉及到Excel操作,接触Excel后发现他的api说明并不多,好在网上有很多朋友贴出了一些代码,我在不断的挫折中吸取了很多教训,现共享出来,给大家参考。 1. 最好在客户端使用,不要在B/S服务端使用,因为会受到IIS权限和占用内存影响,多人并发操作必然完蛋 2. 需要引入两个DLL,Microsoft.Office.Interop.Excel.dll和office.dll,在加上项目的时候,会报错“类型“Microsoft.Office.Interop.Excel.ApplicationClass” 未定义构造函数无法嵌入互操作类型“Microsoft.Office.Interop.Excel.ApplicationClass”。请改用适用的接口。”,这时只需要将将引用的DLL:Microsoft.Office.Interop.Excel;的嵌入互操作类型改为false,就可以了 3. 注意Excel中sheetindex, rowindex,columnindex都是从1开始的 4. 理清Excel里面的对象(Application、Workbook、Worksheet、Range)

Java IO最详解

泪湿孤枕 提交于 2020-02-13 04:27:38
初学java,一直搞不懂java里面的io关系,在网上找了很多大多都是给个结构图草草描述也看的不是很懂。而且没有结合到java7 的最新技术,所以自己来整理一下,有错的话请指正,也希望大家提出宝贵意见。 首先看个图:(如果你也是初学者,我相信你看了真个人都不好了,想想java设计者真是煞费苦心啊!) 这是java io 比较基本的一些处理流,除此之外我们还会提到一些比较深入的基于io的处理类,比如console类,SteamTokenzier,Externalizable接口,Serializable接口等等一些高级用法极其原理。 一、java io的开始:文件 1. 我们主要讲的是流,流的本质也是对文件的处理,我们循序渐进一步一步从文件将到流去。 2. java 处理文件的类 File,java提供了十分详细的文件处理方法,举了其中几个例子,其余的可以去 Java代码 package com.hxw.io; import java.io.*; public class FileExample{ public static void main(String[] args) { createFile(); } /** * 文件处理示例 */ public static void createFile() { File f= new File( "E:/电脑桌面/jar/files

Java IO最详解

若如初见. 提交于 2020-02-13 03:49:25
初学 Java ,一直搞不懂java里面的io关系,在网上找了很多大多都是给个结构图草草描述也看的不是很懂。而且没有结合到java7 的最新技术,所以自己来整理一下,有错的话请指正,也希望大家提出宝贵意见。 首先看个图:(如果你也是初学者,我相信你看了真个人都不好了,想想java设计者真是煞费苦心啊!) 这是 Java io 比较基本的一些处理流,除此之外我们还会提到一些比较深入的基于io的处理类,比如console类,SteamTokenzier,Externalizable接口,Serializable接口等等一些高级用法极其原理。 一、java io的开始:文件 1. 我们主要讲的是流,流的本质也是对文件的处理,我们循序渐进一步一步从文件将到流去。 2. java 处理文件的类 File,java提供了十分详细的文件处理方法,举了其中几个例子,其余的可以去 Java代码 package com.hxw.io; import java.io.*; public class FileExample{ public static void main(String[] args) { createFile(); } /** * 文件处理示例 */ public static void createFile() { File f= new File( "E:/电脑桌面/jar

java io详解(1)

六月ゝ 毕业季﹏ 提交于 2020-02-13 03:04:44
一.java io结构图 二、java io的开始:文件 三、字节流: 一.java io结构图 流分类: 1.Java的字节流 InputStream是所有字节输入流的祖先,而OutputStream是所有字节输出流的祖先。 2.Java的字符流 Reader是所有读取字符串输入流的祖先,而writer是所有输出字符串的祖先。   InputStream,OutputStream,Reader,writer都是抽象类。所以不能直接new 3.初学java,一直搞不懂java里面的io关系,在网上找了很多大多都是给个结构图草草描述也看的不是很懂。而且没有结合到java7 的最新技术,所以自己来整理一下,有错的话请指正,也希望大家提出宝贵意见。 首先看个图:(如果你也是初学者,我相信你看了真个人都不好了,想想java设计者真是煞费苦心啊!) 3.字节流与和字符流的使用非常相似,两者除了操作代码上的不同之外,是否还有其他的不同呢? 实际上字节流在操作时本身不会用到缓冲区(内存),是文件本身直接操作的,而字符流在操作时使用了缓冲区,通过缓冲区再操作文件,如图12-6所示。 下面首先是通过字符流对文件进行读取和写入: package lib; import java.io.BufferedReader; import java.io.File; import java.io

java学习与应用(3.6.2)--JDBC

限于喜欢 提交于 2020-02-12 12:41:04
说明 越来越晕了,教程和代码示范来自黑马程序员。用了再看吧。 JDBC JDBC(Java数据库连接的接口)用于统一java代码操作各种数据库。(需要实现类,是数据库厂商提供jar包完成)。 步骤为,导入jar包(可以使用idea的右键添加到库),注册驱动,获取连接对象,定义sql,获取对象,执行语句,处理结果,释放资源。 Class.forName("com.mysql.jdbc.Driver");Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/db3", "root", "root"); String sql = "update account set balance = 2000 where id = 1";Statement stmt = conn.createStatement(); int count = stmt.executeUpdate(sql);System.out.println(count);stmt.close();conn.close(); DriverManager :驱动管理对象,Connection :数据库连接对象,Statement :执行sql的对象,ResultSet :结果集对象,Preparedstatement :执行sql的对象

mormot接口封装

佐手、 提交于 2020-02-12 10:00:57
mormot接口封装 mormot基于http.sys通讯,支持海量并发,用mormot开发的服务端,长时间运行非常稳定。 经常有人说mormot晦涩难懂,但经过封装以后的MORMOT接口,调用异常简单。支持DELPHI7及以上版本调用哦! procedure TForm1.DownFile(filename: string); // 下载文件 var url: SockString; i: integer; serial: TynSerial; ms: TMemoryStream; begin serial := TynSerial.Create; ms := TMemoryStream.Create; try url := 'downfile'; serial.WriteString('filename', filename); i := FHttp.Post(url, serial.Text, FDataType); if i = 200 then begin serial.Text := FHttp.Content; serial.ReadFile('filecontent', ms); ms.SaveToFile('d:\' + filename); end else ShowMessage(i.ToString + ' error'); finally serial

javaIO笔记

夙愿已清 提交于 2020-02-12 05:50:43
原创 File类 实例化 new File(path); File.separator 分隔符 创建文件的常规做法👇,先问文件的目录存不存在。 还有,如果不确定文件是否存在,要问一下文件是否存在,如果文件已经存在了那就不会创建新文件。 package cn.io; import java.io.File; import java.io.IOException; public class FileDemo { public static void main(String[] args) throws IOException { // TODO Auto-generated method stub String path = "d:"+File.separator+"xx"+File.separator+"dd.txt"; File dd = new File(path); if(dd.getParentFile().exists()) { dd.createNewFile(); }else { dd.getParentFile().mkdirs(); dd.createNewFile(); } } } 下面程序的小递归要注意一下👇。 package cn.suyuesheng.io; import java.io.File; import java.io.IOException;

Java 多线程 - Synchronized关键字

∥☆過路亽.° 提交于 2020-02-12 05:42:51
目录 1-Synchronized 关键字概述 2- Synchronized关键字作用域 3- Synchronized 原理(反编译指令解释) 正文 1-Synchronized 关键字概述 由于同一进程的多个线程共享同一片存储空间,在带来方便的同时,也带来了访问冲突这个严重的问题。Java语言提供了专门机制以解决这种冲突,有效避免了同一个数据对象被多个线程同时访问。 需要明确的几个问题: synchronized关键字可以作为函数的修饰符,也可作为函数内的语句,也就是平时说的同步方法和同步语句块。如果 再细的分类,synchronized可作用于instance变量、object reference(对象引用)、static函数和class literals(类名称字面常量)身上。 无论synchronized关键字加在方法上还是对象上,它取得的锁都是对象,而不是把一段代码或函数当作锁――而且同步方法很可能还会被其他线程的对象访问。 每个对象只有一个锁(lock)与之相关联。 实现同步是要很大的系统开销作为代价的,甚至可能造成死锁,所以尽量避免无谓的同步控制。 2- Synchronized关键字作用域 Java中每一个对象都可以作为锁,这是synchronized实现同步的基础: 普通同步方法,锁是当前实例对象 静态同步方法,锁是当前类的class对象 同步方法块

MySQL--浅析JDBC及简单操作

余生长醉 提交于 2020-02-12 03:49:24
一、什么是JDBC 1、概念 JDBC由一组用Java语言编写的类和接口组成,是Java和数据库之间的一个桥梁,是一个规范,而不是一个实现,能够执行SQL语句。 2、各种不同类型的数据库都有相应的实现 所有不同类型数据库的开发商依照这这种规范编写了相应Java代码以提供相应的操作数据库的方法。 3、关于数据库的执行流程 二、用JDBC访问MySQL 1、配置 (1)导入相关依赖 < ! -- https : / / mvnrepository . com / artifact / mysql / mysql - connector - java -- > < dependency > < groupId > mysql < / groupId > < artifactId > mysql - connector - java < / artifactId > < version > 5.1 .31 < / version > < / dependency > (2)参数配置 pro = new Properties ( ) ; try { //参数配置 pro . load ( new FileInputStream ( "D:\\db.properties" ) ) ; jdbcDriver = pro . getProperty ( "jdbcDriver" ) ;