本文源码:GitHub·点这里 || GitEE·点这里 一.IO流分类 1.分类角度 流的方向 输入流:从数据源中读取数据到应用中的流: 输出流:从应用中将数据写入到目的地的流: 流数据类型 字节流:以字节形式来读写的流,标识是名称以Stream结尾: 字符流:以字符形式来读写的流,标识是名称以Writer.Reader结尾: 管道流:以数据块为单位来处理,缓冲区就是用于读写的数据块: 流的角色 节点流:可以从一个节点或者向一个节点读/写数据的流,也被称为低级流: 处理流:对存在的流进行连接或…
Java中的IO流在处理上分为字节流和字符流.字节流和字符流的区别 : 1.字节流读取的时候,读到一个字节就返回一个字节:  字符流使用了字节流读到一个或多个字节(中文对应的字节数是两个,在UTF-8码表中是3个字节)时.先去查指定的编码表,将查到的字符返回. 2.字节流可以处理所有类型数据,如:图片,MP3,AVI视频文件,而字符流只能处理字符数据.只要是处理纯文本数据,就要优先考虑使用字符流,除此之外都用字节流. 按照流向则分未输入流和输出流. JavaIO流体系可如下表示 : |----流…
原文:SSAS系列--[05]多维数据(编程体系结构) 1.什么是AMO? 翻译:AMO是SSAS中一个完整的管理类集合,它在Microsoft.AnalysisServices命名空间下,我们可以在"\100\SDK\Assemblies\AnalysisServices.dll”中找到.使用AMO我们能够增删修改Cube.dimensions.Mining structure,Analysis Service Database,AMO不能够检索数据,要检索数据我们还必须使用ADOMD.NET…
javaIO流实现文件读写 文件写入: InputStreamReader BufferedReader 文件读取: FileOutputStream package javatest.basic22; import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputS…
  本文是针对于java8引入函数式编程概念以及stream流相关的一些简单介绍 什么是函数式编程?   java程序员第一反应可能会理解成类的成员方法一类的东西 此处并不是这个含义,更接近是数学上的函数 看一下百度百科中关于函数的说明 函数的定义: 给定一个数集A,假设其中的元素为x. 现对A中的元素x施加对应法则f,记作f(x),得到另一数集B.假设B中的元素为y. 则y与x之间的等量关系可以用y=f(x)表示. 我们把这个关系式就叫函数关系式,简称函数. 函数概念含有三个要素:定义域A.值…
JavaIO流中对数据的操作尤为重要,掌握了基本的拷贝操作,才能将各种数据源的操作联系起来. 先来看看对文件夹的拷贝吧: /** * 利用递归实现文件夹的拷贝操作 * 分析:判断 * 是文件:调用拷贝文件的方法fileCopy(...) * 是文件夹:创建文件夹,并使用递归实现子文件夹/子文件的判断及操作 * @param src:要拷贝的文件夹源头 * @param dest:要拷贝到的文件夹源头 */ public static void dirCopy(File src,File dest…
IO流定义: 流的本质是一组单向有序,分起始和终止的数据传输过程.需要导入import java.io.* IO流分类: 按数据类型分为:字节流和字符流 字节流: 按字节进行读取(可以处理任意类型数据) 字符流 字节流 + 编码表(处理纯文本数据优先考虑) 按数据流向分为:输入流和输出流 输入流 有Reader(字符输入流).InputStream(字节输入流) 输出流 有Writer(字符输出流).OutputStream(字节输出流) 按复杂程度分为:基本流和包装流 基本流 包装流 IO 流…
建议阅读 重要性由高到低 Java基础-3 吃透Java IO:字节流.字符流.缓冲流 廖雪峰Java IO Java-IO流 JAVA设计模式初探之装饰者模式 为什么我觉得 Java 的 IO 很复杂? 本文简要的这些文章做了一些总结 基本概念 IO,即in和out,也就是输入和输出,指应用程序和外部设备之间的数据传递,常见的外部设备包括文件(file).管道 (pipe).网络连接 (network). 流(Stream),是一个抽象的概念,是指一连串的数据(字符或字节),是以先进先出的方式…
完美解决JavaIO流报错 java.io.FileNotFoundException: F:\ (系统找不到指定的路径.) 错误原因 读出文件的路径需要有被拷贝的文件名,否则无法解析地址 源代码(用于拷贝) package com.javase.IO.Stream; import org.junit.Test; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import…
一.流 1. 流的含义 在程序设计中,流是对于数据流动传输的一种抽象描述任何有能力产出数据的数据源,或者有能力接受数据的接收端对象都是一个流. 2. 流的源和目的 数据可能从本地文件读取,或者写入,  也可能发送到网络上,这就是源和目的. 1.文件 最基本的一个数据源就是我们前文提到过的文件,文件不仅java中有,其他语言中也拥有文件的概念 2.字节数组 数据最基本的单位是字节.数组是在程序设计中,为了处理方便, 把具有相同类型的若干变量按有序的形式组织起来的一种形式.这些按序排列的同类数据元素…
本文源码:GitHub·点这里 || GitEE·点这里 一.多线程导图 二.多线程基础 1.基础概念 线程是操作系统能够进行运算调度的最小单位,包含在进程之中,是进程中的实际运作单位.一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务. 2.创建方式 继承Thread类.实现Runnable接口.基于Callable和Future接口.Timer是后台线程.线程池. 3.线程状态 状态描述:初始状态.运行状态.阻塞状态.等待状态.超时等待状态.终止…
本文源码:GitHub·点这里 || GitEE·点这里 一.基础概念 1.面向对象概念 面向对象编程的主要思想是把构成问题的各个事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙一个事物在整个解决问题的步骤中的行为. 2.类和对象 对象:真实存在唯一的事物:在应用程序中对象是数据和动作的结合体,不仅能够进行操作,同时还能够记录下操作结果. 类:抽象的概念,实际就是对某种类型事物的共性属性与行为的抽取:例如User[名称.年龄.性别]类用来描述用户的基础信息. Java开发中如…
本文源码:GitHub·点这里 || GitEE·点这里 一.Spring框架 1.框架概述 Spring是一个开源框架,框架的主要优势之一就是其分层架构,分层架构允许使用者选择使用哪一个组件,同时为 J2EE 应用程序开发提供集成的框架.Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情.Spring是一个分层的轻量级开源框架. 基本特性:分层架构.高内聚低耦合.支持AOP编程.事务管理.集成测试.集成各种框架. 2.核心组件 核心容器:包含Bean的创建.配置.管理等功…
一.流操作概述 在默认情况下,当客户端调用服务时,服务只有在接收到完整的消息后才会被调用,同样,客户端只有在包含了调用结果的返回消息被完整接受时,才会解除对它的阻塞. 对于数据量小的消息,这种交换模式提供了简单的编程模型,因为接收消息的耗时较之处理消息本身而言是微不足道的.然而,一旦需要处理数据量较大的消息,如包含了多媒体内容.大文本或数据块的消息,如果每次都要等到完整接收消息之后才能解除阻塞,则未免不太现实. 为了解决这样的问题,WCF允许接收到(客户端或服务)在通过通道接收消息的同时,启动对…
以下函数用于打开和关闭一个流.#include <stdio.h>FILE * fopen (const char *pathname, const char *opentype);int fclose (FILE *stream);FILE * freopen (const char *pathname, const char *opentype, FILE *stream); fopen()打开由pathname指定的文件并创建一个与之相连的流.如果该文件不存在,则创建一个新文件.如果打开…
博文链接:http://haoyuanliu.github.io/2016/04/29/mysql/ 对,我是来骗访问量的!O(∩_∩)O~~ 最近一直在拜读APUE(Advanced Programming in the UNIX Environment),在读到标准I/O库的时候,对于图 5-15的代码和内存流的写入方式发现冲洗内存流和null字节的追加策略书上没有说明白,到底是如何追加null字节的,调用fclose为什么没有追加null字节等等,对于这一系列问题通过代码测试终于搞清楚整体…
IO,即Input(输入)和Output(输出)的首字母缩写. 在编程语言的I/O类库中常使用流这个抽象概念.它代表任何有能力产出数据的数据源对象或者是与能力接收数据的接收端对象.“流”屏蔽了实际的I/O设备中处理数据的细节. IO流的分类: 简单点看就是:   输出流 输入流 字符流 字符输出流 字符输入流 字节流 字节输出流 字节输入流 接下来就实验一下其使用 字符流的使用: 假如要使用字符流把字符“text”写入文件“Text.txt”中,我们需要怎么做呢? 给一点小提示 1.创建流对象,…
流使程序猿可以在抽象层上对集合进行操作. 从外部迭代到内部迭代 什么是外部迭代和内部迭代呢? 个人认为,外和内是相对集合代码而言. 如果迭代的业务执行在应用代码中,称之为外部迭代. 反之,迭代的业务执行在集合代码中,称为内部迭代(函数式编程). 语言描述可能有点抽象,下面看实例. 1. 外部迭代 调用itrator方法,产生一个新的Iterator对象,进而控制整个迭代过程. for (Student student:list){ if (student.getAge()>18){ result…
密码文件 密码文件作用: 密码文件用于dba用户的登录认证. dba用户:具备sysdba和sysoper权限的用户,即oracle的sys和system用户. 本地登录: 1)操作系统认证: [oracle@localhost ~]$ sqlplus "/as sysdba" [oracle@localhost ~]$ sqlplus / as sysdba [oracle@localhost ~]$ sqlplus sys/tiger as sysdba 2)密码文件认证: [or…
Java中执行输出和输入操作,需要通过IO流.例如最常见的System.out.println()就是一个输出流.IO流的类比较多,但核心体系就是由File. InputStream .OutputStream.Reader.Writer和Serializable(接口)组成的,后续会一一详细说明. I/O流基础概念 按照流的方向分为输入流(InputStream)与输出流(OuputStream): 输入流:只能读取数据,不能写入数据. 输出流:只能写入数据,不能读取数据. 因为程序是运行在内…
因为 TCP 本身是无边界的协议,因此它并没有结束标志,也无法分包. socket和文件不一样,从文件中读,读到末尾就到达流的结尾了,所以会返回-1或null,循环结束,但是socket是连接两个主机的桥梁,一端无法知道另一端到底还有没有数据要传输. socket如果不关闭的话,read之类的阻塞函数会一直等待它发送数据,就是所谓的阻塞. 如果发送的东西非常多必须要用循环读,可以有以下解决方案: 调用socket的 shutdownOutput 方法(Java)关闭输出流,该方法的文档说明为,将…
本文源码:GitHub·点这里 || GitEE·点这里 一.基础概念 1.CS与BS架构 CS架构模式 客户端/服务器(Client/Server)模式,既要编写服务器端程序,也要开发客户端程序,软件更新时需要同时更新客户端和服务器端,整体模式相比BS架构要复杂,但是安全性比较高. B/S架构模式 即浏览器/服务器(Browser/Server),只需要编写服务器端程序,浏览器的界面作为访问的服务端的入口,架构相对简单,可以快速迭代,但是安全性较差. 2.Socket通信机制 TCP/IP 协…
写在前面 如果说函数式接口和lambda表达式是Java中函数式编程的基石,那么stream就是在基石上的最富丽堂皇的大厦. 只有熟悉了stream,你才能说熟悉了Java 的函数式编程. 本文主要介绍Stream的基础概念和基本操作,让大家对Stream有一个初步的理解. 本文的示例代码可从gitee上获取:https://gitee.com/cnmemset/javafp stream的概念 首先,看一个典型的stream例子: public static void simpleStream…
写在前面 在本系列文章的第一篇,我们提到了函数式编程的优点之一是"易于并发编程". Java作为一个多线程的语言,它通过 Stream 来提供了并发编程的便利性. 题外话: 严格来说,并发和并行是两个不同的概念. "并发(Concurrency)"强调的是在同一时间开始执行多个任务,通常会涉及多线程之间的上下文切换: "并行(Parallelism)"强调的是将一个大任务分解为多个小任务后,再同时执行这些小任务,得到多个中间结果后再汇总为一个最终…
本文是Java函数式编程的最后一篇,承接上文: Java函数式编程:一.函数式接口,lambda表达式和方法引用 Java函数式编程:二.高阶函数,闭包,函数组合以及柯里化 前面都是概念和铺垫,主要讲述了函数式编程中,如何获取我们需要的函数作为参数或输出来进行编程,同时补充了一些要注意的知识.比如柯里化,闭包等等. 而这一篇要讲的是Java函数式编程的主菜,也就是如何把我们苦苦获取的函数,运用在真正的对于数据的处理之中. 在以前,我们通常会通过一个集合把这些数据放在一起,然后详细编写其处理过程使…
File f = new File(“test.txt”); File的构造器不会在文件不存在的情况下新建一个文件,从File对象中创建文件是由文件流的构造器或File类的createNewFile方法完成,该方法只会创建不存在的文件并返回一个boolean值是否成功创建. File类另外两个构造器: File(String path , String name):在path目录下创建一个name名称的File对象 File(File dir , String name):在目录dir下创建新文…
IO流的分类 1.根据数据的流向: 输入流:用来读数据,如从外界设备读数据到内存中: 输出流:用来写数据,如从内存输出数据到外界存储设备: 2.根据数据流的格式: 字节流:一般用于声音或者秃瓢等二进制数据流,如InputStream OutputStream; 字符流:一般用于处理文本数据如(*.txt),比如InputStreamReader OutputStreamWriter; 3.根据数据流的构造函数区分包装流和原始流: 包装流:在实例化流的时候需要传入另一个流作为自己构造函数的参数,如…
/*查看目录下所有的文件*/ package cn.file; import java.io.File; public class Text2 { public static void main(String[] args) { File a=new File("F:\\图片"); File a1=new File("F:\\你的"); chek(a1); } public static void chek(File f3) {//查看目录下的所有文件 if(f3.…
UTF-8的字节占多少个字节? 常用中文字符用utf-8编码占用3个字节(大约2万多字),超大字符集中要占4个字节.在内存中是2个字节,真正写到硬盘上面的是3个字节. GBK.GB2312汉字占2个字节,用iso8859-1无法表示汉字,只能转为问号. 字节流 字符流; IO流主要是用于获取在硬盘.内存.键盘中数据;根据处理的数据的数据类型不同可以分为(1)字节流和字符流; 根据流向的不同可以分为:(2)输入流和输出流 根据作用的不同可以分为:(3)节点流和处理流. 它们都有各自的抽象父类:In…
1.定义: 流是一种抽象概念,它代表了数据的无结构化传递.数据流(Stream)是指数据通信的通道. 2.流的分类: 1)按流向分 输入流:从数据源到程序中的流 输出流:从程序到数据源的流 2)按数据传输单位分 字节流:以字节为单位传输数据的流(图片,视频,文本) 字符流:以字符为单位传输数据的流(只能为文本) 3)按功能(层次)分 节点流:直接与数据源打交道的流 处理流:不直接与数据源打交道,与其他的"流"打交道.是对一个已存在的流的连接和封装,通过对数据的处理为程序提供更为强大.灵…