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

问题描述 投票:-1回答:4

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

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

例:

0.6 -----> I NEED TO CHECK THIS VALUE
0 
0 
-0.6
355000.317
459999.682
python gis tiff
4个回答
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

0
投票

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

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

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]

0
投票

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

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

    print(f'Value: {value}')
© www.soinside.com 2019 - 2024. All rights reserved.