各种语言的读写
C语言中
控制台读写
scanf() printf()
gets() puts()
getchar() putchar()
文件读写
JAVA中File类以及IO类
文件类以及字符流和字节流的使用
控制台读写
Scanner类
System.out.read()
System.out.println()
文件读写
通过叠加多个对象来提供所期望的功能
源端:
接收端 文件 控制台 网络
通信: 按照字节,字符、字 、行、整个文件、顺序、随机、缓冲
path:可执行文件的路径,javac.exe java.exe
Classpath: class类所在的文件路径
System 类
out 是PrintStream对象
System.in 标准输入串对象,字节数据
有关的概念:
Stream
文件读取步骤:
第一步:打开文件并指定文件的读写方式:实例化并指定读写方式
第二步:使用对应的写入方法
读出方法
第三步:关闭文件
输入输出中
文件系统或者传输系统
文件目录:java.io.File 文件路径类的抽象代表需要和其他相关类配合使用
输入部分:
InputStream 抽象类 位流
Reader 抽象类 字符流
输出部分:
OutputStream 抽象类 位流
Writer 抽象类 字符流
输入输出组合
RandomAccessFile
位流<面向字节>
InputStream<抽象类> OutputStream<抽象类>
FileInputStream FileOutputStream
ByteArrayInputStream ByteArrayOutputStream
StringInputStream
PipedInputStream PipedOutputStream
SequenceInputStream
FilterInputStream<抽象类> FilterOutputStream<抽象类>
DataInputStream DataOutputStream 基本数据类型 int double boolean
BufferdInputStream BufferdOutputStream 增加缓冲区功能
PushbackInputStream
PrintStream 默认使用操作系统的编码来处理对应的字符串转换动作
字符流
Reader<抽象类> Writer<抽象类> InputStreamReader OutputStreamReader
FileReader OutReader
CharArrayReader CharArrayWriter
BufferedReader BufferedWriter
PrintWriter
FilterReader FilterWriter
PushbackReader
缓冲
IO的异常类
叠加多个对象来提供所需要的功能<装饰器设计模式Decorator Pattern>
通过叠加多个对象来提供所期望的功能
异常处理机制
为可能发生的错误提供的机制
通过继承来扩展接口
Scala的读写
控制台读入以及读取本地文件
1.控制台输入
print("控制台输入,请输入:")
val content = Console.readLine()
println(content)
2.文件读入
println("读取本地文件:")
val localfile = Source.fromFile("D:\\my\test.txt","GBK")
for(line <- localfile.getLines()){
println(line)
}
localfile.close()
写到文件,显示到屏幕
2、文件写入
val writer = new PrintWriter(new File("test.txt"))
for(i <- 1 to 100)
writer.println(i)
writer.close()
}
写到屏幕中
println(writer)
Python中的读写
控制台读写
input()
raw_input()
print()
函数加方法<三步>
open()
file.read()
file.close()
模块的方法-包--例如pandas
pandas.read_csv()
pandas.read_table()
R语言中的读写
自带的包
read.table()
read.csv()
write.table()
write.csv()
第三方包
注意操作系统
Windows和linux的文本文件的格式有些不同。
Windows使用’\r\n’表示一行的结束和新的一行的开始,
而linux用’\n’表示一行的结束和新的一行的开始,
因此在linux上多行的文件在windows上的一些程序中变成了一行 。注意读取文件时的系统,以及文件来源的操作系统
数据类型查看以及转换
在编译期间期间确定数据类型,要求在使用变量之前必须先声明其数据类型,C--Java
在运行期才确定其数据类型,通过第一次赋值类型来确定数据类型
数据类型转换,不同的数据类型运算,必须经过显式的类型转换函数处理后才能进行运算。
C语言,显示转化
数据类型:
基本类型
short int long
float double char
构造类型以及其他
array point struct union enum void
类型转换
(type_name) expression
type_name为要转换到的数据类型,expression为表达式。例如:
(float) a; //把a转换为实型
(int)(x+y); //把x+y的结果转换为整型
(float) 100;
JAVA语言
数据类型
String StringBuffer
Array
List: ArrayList LinkedList
Set :
Map :
泛型<>
Iterator 迭代器,Iterable接口,逐一访问容器内元素的方法
Iterator类
使用Collection类的Iterator,可以方便的遍历Vector, ArrayList, LinkedList等集合元素
数据类型转换
Scala数据类型转换
数据类型:Boolean
Char Short
Int Long
Float Double
Byte String
Symbol 符号类型
Tuple 元组:访问元组的内容通过变量名._N的方式进行
Tuple ()
Array ArrayBuffer
List ListBuffer
Queue
Stack
Map
Set
泛型[]
Stream(流)
iterator: Iterator[(String, Any)]
iterator: Iterator[(String, (String,Any))]
iterator: Iterator[(String, (Any,Any))]
iterator: Iterator[(String, (Any,Any,Any))]
类:类和对象 类型比类更为具体,
typeOf[]
.getClass
类型推断--scala语言
转换--隐式转换
隐式转换函数 implicit
请使用REPL来熟悉Scala语言
Scala编译器自动使用最后一个表达式的返回值作为函数的返回值
toList 、toSet 、toArray、toSeq
Python数据类型转换
type()
.type
Tuple ()
List []
Dict {}
Set ()
python中迭代器(iterator) iter()
生成器(Generator)是创建迭代器的简单而强大的工具。它们写起来就像是正规的函数,只是在需要返回数据的时候使用yield语句 python还提供了一个生成器表达式
R语言数据类型查看与转换
R语言查看
class()
mode()
str()
head()
tail()
attributes()
###数据格式以及形式变换
基本数据类型
as.character() as.integer() as.numeric()as.logical() as.complex() NA
结构化数据类型
as.vector() as.matrix() as.array()as.data.frame() as.list() as.factor()as.vector(as.matrix(dfrm)) unlist()
####判断数据类型
is.vector() is.matrix() is.data.frame()
is.factor() is.ordered() is.null()
is.na()
####数据类型变换
包: library("plyr")
函数 ldply、dlply、daply
##把列表数据转换为数据框
library(plyr)
BrGroupT <- ldply(BrGroup)
##去除第一列.id列
BrGroupT <- BrGroupT[,-1]
##数据变换,数据框到列表
lldata <- function(data){return(data[,2:42])}
lldata <- function(data){
dl <- (data[,2:42])
rownames(dl) = data[,1]
return(dl)}
mldata <- dlply(.data=mm[,1:43],.variables="gen",.fun=lldata)
##以gen为分组,返回各个个数以及名字
###数据长宽变换
包:reshape2
函数:melt cast
##宽数据变为长数据,###
library("reshape2")
tissueNames <- c ( "ded", "erm" )
NochangeNames <- c("gen","co")
LongpacDataEN <- melt(CombEN,id.vars=NochangeNames,measure.vars=tNames,variable.name="sue",value.name="ct")
head(LongpacDataEN)
#长数据变为宽数据
cast
SQL中数据类型转换
MySQL中数据类型
Orcale数据类型
迭代器(Iterator)模式,又叫做游标(Cursor)模式
Excel中数据类型转换