如果有一个文件如下:

TITLE = "Water Wurface Elevation"
VARIABLES = "X", "Y", "WS"
Zone N= 384016, E= 96004, DT=(DOUBLE DOUBLE SINGLE), F=FEPOINT, ET=QUADRILATERAL, T="Flow 54.000 @ 290.00 Days"
 417183.062  3121115.75  25.17824
 417387.938  3121108.75  25.17824
 417381.781  3120930.5  25.17824
 417176.844  3120937.5  25.17824
 417387.938  3121108.75  25.18108
 417592.625  3121101.5  25.18108
 417586.438  3120923.5  25.18108
 417381.781  3120930.5  25.18108
 417592.625  3121101.5  25.18995
 417797.031  3121094.5  25.18995
 417790.688  3120916.75  25.18995
 417586.438  3120923.5  25.18995

.......

135813  135814  135815  135816
 135817  135818  135819  135820
 135821  135822  135823  135824
 135825  135826  135827  135828
 135829  135830  135831  135832
 135833  135834  135835  135836
 135837  135838  135839  135840
 135841  135842  135843  135844
 135845  135846  135847  135848

......

PureBasic可以采用正则表达式来实现,读取每行中第三个数据,如果每行包含四个数据,则不保存。

读取含三个数据的每行第三个数据并保存的代码如下:

StandardFile$ = "*.plt"
Pattern$ = "文本文件 (*.txt)|*.txt;所有文件 (*.*)|*.*"
Pattern =
File$ = OpenFileRequester("请选择需要打开的文件", StandardFile$, Pattern$, Pattern)
If File$
MessageRequester("信息", "你选择了:" + Chr() + File$, )
If CreateRegularExpression(, "[0-9.]+")
Dim Result$()
If OpenFile(,File$)
CreateFile(,"c:\test.dat")
Text$=ReadString()
Text$=ReadString()
Text$=ReadString()
While Eof()=
Text$=ReadString()
a = ExtractRegularExpression(,Text$, result$())
Str$=result$()
If a=
WriteStringN(,Str$)
EndIf
Wend
CloseFile()
CloseFile()
MessageRequester("信息", "完成了文件的输出!",)
EndIf
Else
MessageRequester("正则表达式有误", RegularExpressionError())
EndIf
EndIf

PureBasic 打开一个一行有多个数据的文件并读取其中某个数据的更多相关文章

  1. excel to datatable (c#用NPOI将excel文件内容读取到datatable数据表中)

    将excel文件内容读取到datatable数据表中,支持97-2003和2007两种版本的excel 1.第一种是根据excel文件路径读取excel并返回datatable /// <sum ...

  2. 从PCD文件中读取点云数据

    博客转载自:http://www.pclcn.org/study/shownews.php?lang=cn&id=84 在本小节我们学习如何从PCD文件中读取点云数据. 代码 章例1文件夹中, ...

  3. 一些常用的文本文件格式(TXT,JSON,CSV)以及如何从这些文件中读取和写入数据

    TXT文件: txt是微软在操作系统上附带的一种文本格式,文件以.txt为后缀. 从txt文件中读取数据: with open ('xxx.txt') as file: data=file.readl ...

  4. 保存json数据到本地和读取本地json数据

    private void saveJson(JsonBean bean) { File file = new File(getFilesDir(), "json.txt"); Bu ...

  5. 一个简单但详细的解释Windows文件映射读取数据文件的例子

    #include <windows.h>#include <string.h>#include <string>#include <iostream>u ...

  6. 用c++builder读取一个一行有多行变量的文件

    文件内容如下: C DXDY.INP FILE, IN FREE FORMAT ACROSS COLUMNS for  83658 Active CellsC 2013-5-25   上午 10:43 ...

  7. c语言链表从本地文件中读取和写入数据

    1 typedef struct Data{ 2 40 char *name; 3 41 char *IDCARD; 4 42 char *job_id; 5 43 char *length; 6 4 ...

  8. android 数据存储----文件方式 总结

    在android中的文件放在不同位置,它们的读取方式也有一些不同. 本文对android中对资源文件的读取.数据区文件的读取.SD卡文件的读取及RandomAccessFile的方式和方法进行了整理. ...

  9. JAVA TcpServer端使用Scanner读取不到数据的解决办法

    在使用JAVA进行Socket通信时,在Server端使用Scanner的nextLine()方法读取数据时,一直读取不到数据是因为Scanner是一个扫描器,它扫描数据都是去内存中一块缓冲区中进行扫 ...

随机推荐

  1. hdu 1059 多重背包

    题意:价值分别为1,2,3,4,5,6的物品个数分别为a[1],a[2],a[3],a[4],a[5],a[6],问能不能分成两堆价值相等的. 解法:转化成多重背包 #include<stdio ...

  2. 理解ASP.NET 5的中间件

    今天推荐的这篇文章,讲述了如何实现和使用ASP.NET 5的中间件. 虽然在ASP.NET 5中,微软没有再强调OWIN(Open Web Interface for .NET)及其微软官方的OWIN ...

  3. cocos2dx游戏开发——微信打飞机学习笔记(十一)——GameOverScene的搭建

    一.创建文件~ GameOverScene.h GameOverScene.cpp GameOverLayer.h GameOverLayer.cpp 二.How to do? 就是加入一个转场就好~ ...

  4. 如何重启Cloudera Manager?

    为什么重启: 突然发现ClouderaManager的webui访问不了了…… 我使用netstat看了一下我的webui监听端口,发现尼玛N多CLOSE_WAIT,网上查了一下是Socket关闭有问 ...

  5. Windows计数器做性能监控(window server 2008服务器)

    使用Windows计数器 一.创建数据收集器集 二.创建数据收集器 三.使用数据收集器 1.修改数据收集器的属性 2.手动启用.手动停止数据收集器集 3.计划任务 4.在性能监视器中查看 一.性能监视 ...

  6. hud 1785 畅通工程

    #include<iostream> #include<stdio.h> #include<algorithm> #include<math.h> us ...

  7. SU suacor命令学习

    前段时间事情忙,今天才更新.

  8. ember.js:使用笔记3 活用{{bind-attr}}

    说明:属性值绑定(属性值有无引号都可以) 如果是非布尔值: 一般使用,绑定其值; 使用冒号时,绑定名称,如 :high -> high; 如果是布尔值: 如果值是true,绑定其名,这里要注意驼 ...

  9. SPOJ962 Intergalactic Map(最大流)

    题目问一张无向图能否从1点走到2点再走到3点,且一个点只走一次. 思维定势思维定势..建图关键在于,源点向2点连边,1点和3点向汇点连边! 另外,题目数据听说有点问题,出现点大于n的数据.. #inc ...

  10. POJ2817 WordStack(状压DP)

    题目给几个字符串,可以给它们添加前导空格,然后排列,计算每一个字符串和前一个字符串相同非空格字符相等的个数,求可能的最大个数. 状态DP: d[S][i][j]表示已经用的字符串集合S且排列的最后一个 ...