精华内容
下载资源
问答
  • 一、文件的打开和创建12345>>> f= open('/tmp/test.txt')>>> f.read...'>>> f二、文件的读取步骤:打开 -- 读取 -- 关闭1234>>> f= open('/tmp/test.txt')>>> f.read()'hello python! hello world! '>>> f.close()读...

    一、文件的打开和创建

    1

    2

    3

    4

    5

    >>> f= open('/tmp/test.txt')

    >>> f.read()

    'hello python! hello world! '

    >>> f

    二、文件的读取步骤:打开 -- 读取 -- 关闭

    1

    2

    3

    4

    >>> f= open('/tmp/test.txt')

    >>> f.read()

    'hello python! hello world! '

    >>> f.close()

    读取数据是后期数据处理的必要步骤。.txt是广泛使用的数据文件格式。一些.csv, .xlsx等文件可以转换为.txt 文件进行读取。我常使用的是Python自带的I/O接口,将数据读取进来存放在list中,然后再用numpy科学计算包将list的数据转换为array格式,从而可以像MATLAB一样进行科学计算。

    下面是一段常用的读取txt文件代码,可以用在大多数的txt文件读取中

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    filename= 'array_reflection_2D_TM_vertical_normE_center.txt' # txt文件和当前脚本在同一目录下,所以不用写具体路径

    pos= []

    Efield= []

    withopen(filename,'r') as file_to_read:

    while True:

    lines= file_to_read.readline()# 整行读取数据

    if not lines:

    break

    pass

    p_tmp, E_tmp= [float(i)for iin lines.split()]# 将整行数据分割处理,如果分割符是空格,括号里就不用传入参数,如果是逗号, 则传入",'字符。

    pos.append(p_tmp)# 添加新读取的数据

    Efield.append(E_tmp)

    pass

    pos= np.array(pos)# 将数据从list类型转换为array类型。

    Efield= np.array(Efield)

    pass

    例如下面是将要读入的txt文件

    2016626171647895.png?201652617172

    经过读取后,在Enthought Canopy的variable window查看读入的数据, 左侧为pos,右侧为Efield。

    2016626171713978.png?2016526171725

    2016626171743777.png?2016526171754

    三、文件写入(慎重,小心别清空原本的文件)步骤:打开 -- 写入 -- (保存)关闭

    直接的写入数据是不行的,因为默认打开的是'r' 只读模式

    1

    2

    3

    4

    5

    6

    >>> f.write('hello boy')

    Traceback (most recent call last):

    File "", line1,in

    IOError:File not open for writing

    >>> f

    应该先指定可写的模式

    1

    2

    >>> f1= open('/tmp/test.txt','w')

    >>> f1.write('hello boy!')

    但此时数据只写到了缓存中,并未保存到文件,而且从下面的输出可以看到,原先里面的配置被清空了

    1

    2

    [root@node1 ~]# cat /tmp/test.txt

    [root@node1 ~]#

    关闭这个文件即可将缓存中的数据写入到文件中

    1

    2

    3

    >>> f1.close()

    [root@node1 ~]# cat /tmp/test.txt

    [root@node1 ~]# hello boy!

    注意:这一步需要相当慎重,因为如果编辑的文件存在的话,这一步操作会先清空这个文件再重新写入。那么如果不要清空文件再写入该如何做呢?

    使用r+ 模式不会先清空,但是会替换掉原先的文件,如下面的例子:hello boy! 被替换成hello aay!

    1

    2

    3

    4

    5

    >>> f2= open('/tmp/test.txt','r+')

    >>> f2.write(' hello aa!')

    >>> f2.close()

    [root@node1 python]# cat /tmp/test.txt

    hello aay!

    如何实现不替换?

    1

    2

    3

    4

    5

    6

    7

    8

    >>> f2= open('/tmp/test.txt','r+')

    >>> f2.read()

    'hello girl!'

    >>> f2.write(' hello boy!')

    >>> f2.close()

    [root@node1 python]# cat /tmp/test.txt

    hello girl!

    hello boy!

    可以看到,如果在写之前先读取一下文件,再进行写入,则写入的数据会添加到文件末尾而不会替换掉原先的文件。这是因为指针引起的,r+ 模式的指针默认是在文件的开头,如果直接写入,则会覆盖源文件,通过read() 读取文件后,指针会移到文件的末尾,再写入数据就不会有问题了。这里也可以使用a 模式

    1

    2

    3

    4

    5

    6

    7

    8

    >>> f= open('/tmp/test.txt','a')

    >>> f.write(' hello man!')

    >>> f.close()

    >>>

    [root@node1 python]# cat /tmp/test.txt

    hello girl!

    hello boy!

    hello man!

    关于其他模式的介绍,见下表:

    2016626170852899.png?20165261792

    文件对象的方法:

    f.readline() 逐行读取数据

    方法一:

    1

    2

    3

    4

    5

    6

    7

    8

    9

    >>> f= open('/tmp/test.txt')

    >>> f.readline()

    'hello girl! '

    >>> f.readline()

    'hello boy! '

    >>> f.readline()

    'hello man!'

    >>> f.readline()

    ''

    方法二:

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    >>>for iin open('/tmp/test.txt'):

    ...print i

    ...

    hello girl!

    hello boy!

    hello man!

    f.readlines() 将文件内容以列表的形式存放

    >>> f= open('/tmp/test.txt')

    >>> f.readlines()

    ['hello girl! ','hello boy! ','hello man!']

    >>> f.close()

    f.next() 逐行读取数据,和f.readline() 相似,唯一不同的是,f.readline() 读取到最后如果没有数据会返回空,而f.next() 没读取到数据则会报错

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    >>> f= open('/tmp/test.txt')

    >>> f.readlines()

    ['hello girl! ','hello boy! ','hello man!']

    >>> f.close()

    >>>

    >>> f= open('/tmp/test.txt')

    >>> f.next()

    'hello girl! '

    >>> f.next()

    'hello boy! '

    >>> f.next()

    'hello man!'

    >>> f.next()

    Traceback (most recent call last):

    File "", line1,in

    StopIteration

    f.writelines() 多行写入

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    >>> l= [' hello dear!',' hello son!',' hello baby! ']

    >>> f= open('/tmp/test.txt','a')

    >>> f.writelines(l)

    >>> f.close()

    [root@node1 python]# cat /tmp/test.txt

    hello girl!

    hello boy!

    hello man!

    hello dear!

    hello son!

    hello baby!

    f.seek(偏移量,选项)

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    >>> f= open('/tmp/test.txt','r+')

    >>> f.readline()

    'hello girl! '

    >>> f.readline()

    'hello boy! '

    >>> f.readline()

    'hello man! '

    >>> f.readline()

    ' '

    >>> f.close()

    >>> f= open('/tmp/test.txt','r+')

    >>> f.read()

    'hello girl! hello boy! hello man! '

    >>> f.readline()

    ''

    >>> f.close()

    这个例子可以充分的解释前面使用r+这个模式的时候,为什么需要执行f.read()之后才能正常插入

    f.seek(偏移量,选项)

    (1)选项=0,表示将文件指针指向从文件头部到"偏移量”字节处

    (2)选项=1,表示将文件指针指向从文件的当前位置,向后移动"偏移量”字节

    (3)选项=2,表示将文件指针指向从文件的尾部,向前移动"偏移量”字节

    偏移量:正数表示向右偏移,负数表示向左偏移

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    >>> f= open('/tmp/test.txt','r+')

    >>> f.seek(0,2)

    >>> f.readline()

    ''

    >>> f.seek(0,0)

    >>> f.readline()

    'hello girl! '

    >>> f.readline()

    'hello boy! '

    >>> f.readline()

    'hello man! '

    >>> f.readline()

    ''

    f.flush() 将修改写入到文件中(无需关闭文件)

    1

    2

    >>> f.write('hello python!')

    >>> f.flush()

    1

    [root@node1 python]# cat /tmp/test.txt

    1

    2

    3

    4

    hello girl!

    hello boy!

    hello man!

    hello python!

    f.tell() 获取指针位置

    1

    2

    3

    4

    5

    6

    7

    8

    9

    >>> f= open('/tmp/test.txt')

    >>> f.readline()

    'hello girl! '

    >>> f.tell()

    12

    >>> f.readline()

    'hello boy! '

    >>> f.tell()

    23

    四、内容查找和替换

    1、内容查找实例:统计文件中hello个数

    思路:打开文件,遍历文件内容,通过正则表达式匹配关键字,统计匹配个数。

    1

    [root@node1 ~]# cat /tmp/test.txt

    1

    2

    3

    4

    hello girl!

    hello boy!

    hello man!

    hello python!

    脚本如下:

    方法一:

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    #!/usr/bin/python

    import re

    f= open('/tmp/test.txt')

    source= f.read()

    f.close()

    r= r'hello'

    s= len(re.findall(r,source))

    print s

    [root@node1 python]# python count.py

    4

    方法二:

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    #!/usr/bin/python

    import re

    fp= file("/tmp/test.txt",'r')

    count= 0

    for sin fp.readlines():

    li= re.findall("hello",s)

    if len(li)>0:

    count= count+ len(li)

    print "Search",count,"hello"

    fp.close()

    [root@node1 python]# python count1.py

    Search4 hello

    2、替换实例:把test.txt 中的hello全部换为"hi",并把结果保存到myhello.txt中。

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    #!/usr/bin/python

    import re

    f1= open('/tmp/test.txt')

    f2= open('/tmp/myhello.txt','r+')

    for sin f1.readlines():

    f2.write(s.replace('hello','hi'))

    f1.close()

    f2.close()

    [root@node1 python]# touch /tmp/myhello.txt

    [root@node1 ~]# cat /tmp/myhello.txt

    hi girl!

    hi boy!

    hi man!

    hi python!

    实例:读取文件test.txt内容,去除空行和注释行后,以行为单位进行排序,并将结果输出为result.txt。test.txt 的内容如下所示:

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    #some words

    Sometimes in life,

    You find a special friend;

    Someone who changes your life just by being part of it.

    Someone who makes you laugh until you can't stop;

    Someone who makes you believe that there really is good in the world.

    Someone who convinces you that there really is an unlocked door just waiting for you to open it.

    This is Forever Friendship.

    when you're down,

    and the world seems dark and empty,

    Your forever friend lifts you up in spirits and makes that dark and empty world

    suddenly seem bright and full.

    Your forever friend gets you through the hard times,the sad times,and the confused times.

    If you turn and walk away,

    Your forever friend follows,

    If you lose you way,

    Your forever friend guides you and cheers you on.

    Your forever friend holds your hand and tells you that everything is going to be okay.

    脚本如下:

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    f= open('cdays-4-test.txt')

    result= list()

    for linein f.readlines():# 逐行读取数据

    line= line.strip()#去掉每行头尾空白

    if not len(line)or line.startswith('#'): # 判断是否是空行或注释行

    continue #是的话,跳过不处理

    result.append(line)#保存

    result.sort()#排序结果

    print result

    open('cdays-4-result.txt','w').write('%s' % ' '.join(result))#保存入结果文件

    展开全文
  • 一、文件的打开和创建>>> f = open('/tmp/test.txt')>>>...'>>> f二、文件的读取步骤:打开 -- 读取 -- 关闭>>> f = open('/tmp/test.txt')>>> f.read()'hello python! hello world! '>>> f.close()读取数据是后期数...

    一、文件的打开和创建

    >>> f = open('/tmp/test.txt')

    >>> f.read()

    'hello python! hello world! '

    >>> f

    二、文件的读取步骤:打开 -- 读取 -- 关闭

    >>> f = open('/tmp/test.txt')

    >>> f.read()

    'hello python! hello world! '

    >>> f.close()

    读取数据是后期数据处理的必要步骤。.txt是广泛使用的数据文件格式。一些.csv, .xlsx等文件可以转换为.txt 文件进行读取。我常使用的是Python自带的I/O接口,将数据读取进来存放在list中,然后再用numpy科学计算包将list的数据转换为array格式,从而可以像MATLAB一样进行科学计算。

    下面是一段常用的读取txt文件代码,可以用在大多数的txt文件读取中

    filename = 'array_reflection_2D_TM_vertical_normE_center.txt' # txt文件和当前脚本在同一目录下,所以不用写具体路径

    pos = []

    Efield = []

    with open(filename, 'r') as file_to_read:

    while True:

    lines = file_to_read.readline() # 整行读取数据

    if not lines:

    break

    pass

    p_tmp, E_tmp = [float(i) for i in lines.split()] # 将整行数据分割处理,如果分割符是空格,括号里就不用传入参数,如果是逗号, 则传入",'字符。

    pos.append(p_tmp) # 添加新读取的数据

    Efield.append(E_tmp)

    pass

    pos = np.array(pos) # 将数据从list类型转换为array类型。

    Efield = np.array(Efield)

    pass

    例如下面是将要读入的txt文件

    2016626171647895.png?201652617172

    经过读取后,在Enthought Canopy的variable window查看读入的数据, 左侧为pos,右侧为Efield。

    2016626171713978.png?2016526171725

    2016626171743777.png?2016526171754

    三、文件写入(慎重,小心别清空原本的文件)步骤:打开 -- 写入 -- (保存)关闭

    直接的写入数据是不行的,因为默认打开的是'r' 只读模式

    >>> f.write('hello boy')

    Traceback (most recent call last):

    File "", line 1, in

    IOError: File not open for writing

    >>> f

    应该先指定可写的模式

    >>> f1 = open('/tmp/test.txt','w')

    >>> f1.write('hello boy!')

    但此时数据只写到了缓存中,并未保存到文件,而且从下面的输出可以看到,原先里面的配置被清空了

    [root@node1 ~]# cat /tmp/test.txt

    [root@node1 ~]#

    关闭这个文件即可将缓存中的数据写入到文件中

    >>> f1.close()

    [root@node1 ~]# cat /tmp/test.txt

    [root@node1 ~]# hello boy!

    注意:这一步需要相当慎重,因为如果编辑的文件存在的话,这一步操作会先清空这个文件再重新写入。那么如果不要清空文件再写入该如何做呢?

    使用r+ 模式不会先清空,但是会替换掉原先的文件,如下面的例子:hello boy! 被替换成hello aay!

    >>> f2 = open('/tmp/test.txt','r+')

    >>> f2.write(' hello aa!')

    >>> f2.close()

    [root@node1 python]# cat /tmp/test.txt

    hello aay!

    如何实现不替换?

    >>> f2 = open('/tmp/test.txt','r+')

    >>> f2.read()

    'hello girl!'

    >>> f2.write(' hello boy!')

    >>> f2.close()

    [root@node1 python]# cat /tmp/test.txt

    hello girl!

    hello boy!

    可以看到,如果在写之前先读取一下文件,再进行写入,则写入的数据会添加到文件末尾而不会替换掉原先的文件。这是因为指针引起的,r+ 模式的指针默认是在文件的开头,如果直接写入,则会覆盖源文件,通过read() 读取文件后,指针会移到文件的末尾,再写入数据就不会有问题了。这里也可以使用a 模式

    >>> f = open('/tmp/test.txt','a')

    >>> f.write(' hello man!')

    >>> f.close()

    >>>

    [root@node1 python]# cat /tmp/test.txt

    hello girl!

    hello boy!

    hello man!

    关于其他模式的介绍,见下表:

    2016626170852899.png?20165261792

    文件对象的方法:

    f.readline() 逐行读取数据

    方法一:

    >>> f = open('/tmp/test.txt')

    >>> f.readline()

    'hello girl! '

    >>> f.readline()

    'hello boy! '

    >>> f.readline()

    'hello man!'

    >>> f.readline()

    ''

    方法二:

    >>> for i in open('/tmp/test.txt'):

    ... print i

    ...

    hello girl!

    hello boy!

    hello man!

    f.readlines() 将文件内容以列表的形式存放

    >>> f = open('/tmp/test.txt')

    >>> f.readlines()

    ['hello girl! ', 'hello boy! ', 'hello man!']

    >>> f.close()

    f.next() 逐行读取数据,和f.readline() 相似,唯一不同的是,f.readline() 读取到最后如果没有数据会返回空,而f.next() 没读取到数据则会报错

    >>> f = open('/tmp/test.txt')

    >>> f.readlines()

    ['hello girl! ', 'hello boy! ', 'hello man!']

    >>> f.close()

    >>>

    >>> f = open('/tmp/test.txt')

    >>> f.next()

    'hello girl! '

    >>> f.next()

    'hello boy! '

    >>> f.next()

    'hello man!'

    >>> f.next()

    Traceback (most recent call last):

    File "", line 1, in

    StopIteration

    f.writelines() 多行写入

    >>> l = [' hello dear!',' hello son!',' hello baby! ']

    >>> f = open('/tmp/test.txt','a')

    >>> f.writelines(l)

    >>> f.close()

    [root@node1 python]# cat /tmp/test.txt

    hello girl!

    hello boy!

    hello man!

    hello dear!

    hello son!

    hello baby!

    f.seek(偏移量,选项)

    >>> f = open('/tmp/test.txt','r+')

    >>> f.readline()

    'hello girl! '

    >>> f.readline()

    'hello boy! '

    >>> f.readline()

    'hello man! '

    >>> f.readline()

    ' '

    >>> f.close()

    >>> f = open('/tmp/test.txt','r+')

    >>> f.read()

    'hello girl! hello boy! hello man! '

    >>> f.readline()

    ''

    >>> f.close()

    这个例子可以充分的解释前面使用r+这个模式的时候,为什么需要执行f.read()之后才能正常插入

    f.seek(偏移量,选项)

    (1)选项=0,表示将文件指针指向从文件头部到"偏移量”字节处

    (2)选项=1,表示将文件指针指向从文件的当前位置,向后移动"偏移量”字节

    (3)选项=2,表示将文件指针指向从文件的尾部,向前移动"偏移量”字节

    偏移量:正数表示向右偏移,负数表示向左偏移

    >>> f = open('/tmp/test.txt','r+')

    >>> f.seek(0,2)

    >>> f.readline()

    ''

    >>> f.seek(0,0)

    >>> f.readline()

    'hello girl! '

    >>> f.readline()

    'hello boy! '

    >>> f.readline()

    'hello man! '

    >>> f.readline()

    ''

    f.flush() 将修改写入到文件中(无需关闭文件)

    >>> f.write('hello python!')

    >>> f.flush()

    [root@node1 python]# cat /tmp/test.txt

    hello girl!

    hello boy!

    hello man!

    hello python!

    f.tell() 获取指针位置

    >>> f = open('/tmp/test.txt')

    >>> f.readline()

    'hello girl! '

    >>> f.tell()

    12

    >>> f.readline()

    'hello boy! '

    >>> f.tell()

    23

    四、内容查找和替换

    1、内容查找实例:统计文件中hello个数

    思路:打开文件,遍历文件内容,通过正则表达式匹配关键字,统计匹配个数。

    [root@node1 ~]# cat /tmp/test.txt

    hello girl!

    hello boy!

    hello man!

    hello python!

    脚本如下:

    方法一:

    #!/usr/bin/python

    import re

    f = open('/tmp/test.txt')

    source = f.read()

    f.close()

    r = r'hello'

    s = len(re.findall(r,source))

    print s

    [root@node1 python]# python count.py

    4

    方法二:

    #!/usr/bin/python

    import re

    fp = file("/tmp/test.txt",'r')

    count = 0

    for s in fp.readlines():

    li = re.findall("hello",s)

    if len(li)>0:

    count = count + len(li)

    print "Search",count, "hello"

    fp.close()

    [root@node1 python]# python count1.py

    Search 4 hello

    2、替换实例:把test.txt 中的hello全部换为"hi",并把结果保存到myhello.txt中。

    #!/usr/bin/python

    import re

    f1 = open('/tmp/test.txt')

    f2 = open('/tmp/myhello.txt','r+')

    for s in f1.readlines():

    f2.write(s.replace('hello','hi'))

    f1.close()

    f2.close()

    [root@node1 python]# touch /tmp/myhello.txt

    [root@node1 ~]# cat /tmp/myhello.txt

    hi girl!

    hi boy!

    hi man!

    hi python!

    实例:读取文件test.txt内容,去除空行和注释行后,以行为单位进行排序,并将结果输出为result.txt。test.txt 的内容如下所示:

    #some words

    Sometimes in life,

    You find a special friend;

    Someone who changes your life just by being part of it.

    Someone who makes you laugh until you can't stop;

    Someone who makes you believe that there really is good in the world.

    Someone who convinces you that there really is an unlocked door just waiting for you to open it.

    This is Forever Friendship.

    when you're down,

    and the world seems dark and empty,

    Your forever friend lifts you up in spirits and makes that dark and empty world

    suddenly seem bright and full.

    Your forever friend gets you through the hard times,the sad times,and the confused times.

    If you turn and walk away,

    Your forever friend follows,

    If you lose you way,

    Your forever friend guides you and cheers you on.

    Your forever friend holds your hand and tells you that everything is going to be okay.

    脚本如下:

    f = open('cdays-4-test.txt')

    result = list()

    for line in f.readlines(): # 逐行读取数据

    line = line.strip() #去掉每行头尾空白

    if not len(line) or line.startswith('#'): # 判断是否是空行或注释行

    continue #是的话,跳过不处理

    result.append(line) #保存

    result.sort() #排序结果

    print result

    open('cdays-4-result.txt','w').write('%s' % ' '.join(result)) #保存入结果文件

    展开全文
  • Java读取txt文件和写入txt文件

    万次阅读 多人点赞 2016-05-25 23:16:26
    原文: Java读取txt文件和写入txt文件写Java程序时经常碰到要读如txt或写入txt文件的情况,但是由于要定义好多变量,经常记不住,每次都要查,特此整理一下,简单易用,方便好懂! package edu.thu.keyword.test; ...

    2018-10-19更新

    网友推荐更加简洁的写法,修改之后的代码;
    项目实用优化,增加java7中的try-with-resources写法

    package com.nickwong.code;
    
    import java.io.*;
    
    /**
     * Created by Nickwong on 31/07/2018.
     * 根据1-8楼的建议,优化了代码
     */
    public class ReadTxt {
    
        public static void main(String args[]) {
            readFile();
            writeFile();
        }
    
        /**
         * 读入TXT文件
         */
        public static void readFile() {
            String pathname = "input.txt"; // 绝对路径或相对路径都可以,写入文件时演示相对路径,读取以上路径的input.txt文件
            //防止文件建立或读取失败,用catch捕捉错误并打印,也可以throw;
            //不关闭文件会导致资源的泄露,读写文件都同理
            //Java7的try-with-resources可以优雅关闭文件,异常时自动关闭文件;详细解读https://stackoverflow.com/a/12665271
            try (FileReader reader = new FileReader(pathname);
                 BufferedReader br = new BufferedReader(reader) // 建立一个对象,它把文件内容转成计算机能读懂的语言
            ) {
                String line;
                //网友推荐更加简洁的写法
                while ((line = br.readLine()) != null) {
                    // 一次读入一行数据
                    System.out.println(line);
                }
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    
        /**
         * 写入TXT文件
         */
        public static void writeFile() {
            try {
                File writeName = new File("output.txt"); // 相对路径,如果没有则要建立一个新的output.txt文件
                writeName.createNewFile(); // 创建新文件,有同名的文件的话直接覆盖
                try (FileWriter writer = new FileWriter(writeName);
                     BufferedWriter out = new BufferedWriter(writer)
                ) {
                    out.write("我会写入文件啦1\r\n"); // \r\n即为换行
                    out.write("我会写入文件啦2\r\n"); // \r\n即为换行
                    out.flush(); // 把缓存区内容压入文件
                }
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
    
    
    

    ##参考原文: Java读取txt文件和写入txt文件##

    写Java程序时经常碰到要读如txt或写入txt文件的情况,但是由于要定义好多变量,经常记不住,每次都要查,特此整理一下,简单易用,方便好懂!

        package edu.thu.keyword.test;  
          
        import java.io.File;  
        import java.io.InputStreamReader;  
        import java.io.BufferedReader;  
        import java.io.BufferedWriter;  
        import java.io.FileInputStream;  
        import java.io.FileWriter;  
          
        public class cin_txt {  
            static void main(String args[]) {  
                try { // 防止文件建立或读取失败,用catch捕捉错误并打印,也可以throw  
          
                    /* 读入TXT文件 */  
                    String pathname = "D:\\twitter\\13_9_6\\dataset\\en\\input.txt"; // 绝对路径或相对路径都可以,这里是绝对路径,写入文件时演示相对路径  
                    File filename = new File(pathname); // 要读取以上路径的input。txt文件  
                    InputStreamReader reader = new InputStreamReader(  
                            new FileInputStream(filename)); // 建立一个输入流对象reader  
                    BufferedReader br = new BufferedReader(reader); // 建立一个对象,它把文件内容转成计算机能读懂的语言  
                    String line = "";  
                    line = br.readLine();  
                    while (line != null) {  
                        line = br.readLine(); // 一次读入一行数据  
                    }  
          
                    /* 写入Txt文件 */  
                    File writename = new File(".\\result\\en\\output.txt"); // 相对路径,如果没有则要建立一个新的output。txt文件  
                    writename.createNewFile(); // 创建新文件  
                    BufferedWriter out = new BufferedWriter(new FileWriter(writename));  
                    out.write("我会写入文件啦\r\n"); // \r\n即为换行  
                    out.flush(); // 把缓存区内容压入文件  
                    out.close(); // 最后记得关闭文件  
          
                } catch (Exception e) {  
                    e.printStackTrace();  
                }  
            }  
        }  
    
    展开全文
  • 文件读写 读取txt文档

    2018-01-23 09:36:49
    //文件读写 读取txt文档 public static String getFirmwareeVersion(String file) { StringBuilder result = new StringBuilder(); try { BufferedReader br = new BufferedReader(ne

    //文件读写 读取txt文档
    public static String getFirmwareeVersion(String file) {
    StringBuilder result = new StringBuilder();
    try {
    BufferedReader br = new BufferedReader(new FileReader(file));//构造一个BufferedReader类来读取文件
    String s = null;
    while ((s = br.readLine()) != null) {//使用readLine方法,一次读一行
    result.append(System.lineSeparator() + s);
    // result.append(s);
    }
    br.close();
    } catch (Exception e) {
    e.printStackTrace();
    }
    return result.toString();
    }

    展开全文
  • C++读写txt文件(基本操作1)

    万次阅读 多人点赞 2017-11-30 17:49:02
    本博客主要写了用C++读写txt本文的基本操作,最简单的写入和读出两个基本操作。 本程序的功能是向Test.txt文件文件写入字符串"This is a Test12!"和读取字符串"This is a Test12!",并且将读取到的字符串存到temp...
  • 读写txt操作

    2018-12-21 10:13:11
    读写txt操作,能读取,存储,写入,修改,记录等功能,源码
  • Java读写TXT文件(读取为数组格式返回) 实现代码: 读取文件成为数组类型: /* 读取文件 */ public static String[] readTxtFile(String filePath) { try { String encoding = "GBK"; File file = new ...
  • Delphi中读写TXT文件

    2017-07-26 16:51:54
    如何在Delphi中读写TXT文件
  • python读写txt文件的常用操作: 1、读取txt文件全部内容 def txt_read(file_name): """ 读取txt文件全部内容 """ with open(file_name, 'r') as fp: data_str = fp.read() 2、按行读取txt文件全部内容 def ...
  • 主要为大家详细介绍了C#读写txt文本文档数据的2种方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
  • MFC读写TXT文件

    热门讨论 2011-12-20 13:53:02
    MFC读写TXT文件 还可以另存为并显示保存路径
  • 今天,练习一个通过读取txt文本信息(英文版的Walden.txt),统计文本中的英文单词词频。在读取Walden.txt文本时,出现了“UnicodeDecodeError: 'gbk' codec can't decode byte 0xbf in position 2: illegal ...
  • 一、利用C++读写txt文件: 全篇转载http://blog.csdn.net/lh3325251325/article/details/4761575(他也是转载的)下面的代码没有逐一验证, 主要是为了学习这个框架。 #include  #include  #include    using...
  • C++读写txt文本文件

    热门讨论 2012-05-12 20:03:01
    C++读写txt文件,逐行读取,判断并根据判断条件写至输出文件
  • java读写txt

    千次阅读 2017-07-31 13:25:17
    java读取txt File file=new File(“D:\scoreList.txt”); if(file.isFile() && file.exists()){ //判断文件是否存在 InputStreamReader read = new InputStreamReader(new FileInputStream(f
  • nodejs读写txt文件

    千次阅读 2019-10-28 20:40:18
    nodejs读写txt文件
  • java读写txt文件

    千次阅读 2019-01-10 20:31:56
    java读写txt文件 用键盘输入一串数字如“15 25 26”,存入txt中并读取显示 package thread; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.DataInputStream; import java....
  • Matlab读取txt文件中的数据(使用textread函数)

    万次阅读 多人点赞 2018-04-18 22:13:45
    在使用Matlab处理数据时,我们经常需要读取txt文档,可以使用Matlab中强大的textread函数。它的基本语法是:[A,B,C,...] = textread(filename,format)[A,B,C,...] = textread(filename,format,N)其中filename就是...
  • bat读取txt

    千次阅读 2019-06-14 13:36:43
    bat读取txt不能读取多行到一个变量里边 我做过测试
  • matlab读写txt文档

    千次阅读 2019-04-18 10:23:28
    1.matlab读取txt文档行数 fid = fopen('test.txt') lines = 0; while ~feof(fid) fgetl(fid); lines = lines +1; end fclose(fid); lines; 参考:https://blog.csdn.net/qq_26860179/article/details/51144045...
  • C++ 读写txt文件类

    千次阅读 2018-08-16 21:35:51
    C++ 读写txt文件类 C++ 读写txt文件类 代码如下: 运行结果: 封装一个C++简单的类,用于读写txt文件。 代码如下: comFile.h #pragma once #include <iostream> #include &...
  • 如何使用python读取txt文件中的数据

    万次阅读 多人点赞 2019-04-28 16:33:44
    python读取txt各个数字 python 读取文本文件内容转化为python的list python:如何将txt文件中的数值数据读入到list中,且在list中存在的格式为float类型或者其他数值类型 python .txt文件读取及数据处理总结 利用...
  • java代码读写txt文件

    2019-03-29 13:51:04
    1.读取txt文件 //读取txt文件 public static String readerTxt(String url){ StringBuffer stringBuffer = new StringBuffer(); FileReader reader = null; BufferedReader br = null; try { String...
  • python读取txt文件,写入txt文件

    万次阅读 2019-04-08 11:41:59
    一、读取txt文件 方法一: import numpy as np file = open("../data/track_data.txt","r") list = file.readlines()#每一行数据写入到list中 print(list) lists = [] #将txt文件转换成数组形式保存 for fields...
  • JAVA 读取txt文件内容

    万次阅读 2019-01-18 10:14:08
    JAVA 读取txt文件内容     public class ReadTest {  /**  * @author 戴尔电脑 * @date 2018-1-19 下午4:02:38 * 读取txt文件的内容 * @param file 想要读取的文件对象  * course.txt  * 1,数据库  * 2,...
  • JQuery读取txt文件

    万次阅读 2018-10-22 15:25:14
    读取txt文件分两种情况: 一、如果txt文件存放在项目中: var htmlobj=$.ajax({url:"txt文件的路径",async:false}); htmlobj.responseText  二、如果txt文件存放在本地(服务) 首先需要配置tomcat...
  • C#读写txt文件的两种方法

    万次阅读 2018-05-24 20:33:01
    参考:C#读写txt文件的两种方法介绍using UnityEngine; using System.IO; using System.Text; public class ReadTxt : MonoBehaviour { //读取TXT方法一 //使用FileStream类进行文件的都需,并将他转换成char...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 570,483
精华内容 228,193
关键字:

读取txt