如何读取tfw文件中的文本?

时间:2019-02-20 15:19:40

标签: python gis tiff

我正在尝试检查tfw file中的值。 我有很多tfw文件,我需要循环浏览所有文件,并检查第一行中的值是否等于x。

我在任何地方都找不到如何处理tfw文件的方法。我知道它就像一个文本文件(ASCII),但不能与xxx.readlines一起使用。有人知道我怎么读第一行吗?

示例:

0.6 -----> I NEED TO CHECK THIS VALUE
0 
0 
-0.6
355000.317
459999.682

4 个答案:

答案 0 :(得分:1)

由于它是文本文件,因此您应该可以这样做:

tfw_file = open("filename", "r")
tfw_raw_data = tfw_file.read()  #reading all text from file
tfw_file.close()
value_from_file = float(tfw_raw_data.split("\n")[0]) # splitting file by lines, getting first line and converting it to float

答案 1 :(得分:0)

下面的代码(如果不起作用,则必须将输入文件上传到公共位置,以便可以对代码进行测试)

with open('tfw.txt','r') as tfw:
    x-scale= float(tfw.readlines()[0])
    print('x-scale value: {}'.format(x-scale))

答案 2 :(得分:0)

现在可以使用:

    for filename in os.listdir(root):
     if filename.endswith('.tfw'):
      with open (os.path.join(root,filename)) as f:
      content = f.read()
      line = float(content.split("\n")[0]

答案 3 :(得分:0)

您只能读取文件的第一行:

with open('data.tfw', 'r') as f:
    value = float(f.readline())

    print(f'Value: {value}')