Показать сообщение отдельно

  #6  
Старый 08.03.2009, 23:52
t4Nk
Познающий
Регистрация: 23.09.2007
Сообщений: 75
С нами: 9806336

Репутация: 86
По умолчанию

Цитата:
Сообщение от CHIP:))  
Вобщем у меня небольшая проблемка, надо разобрать большой файл, обьемом около 500к строк с данными ГПС. В файле строки
$GPRMC,153255,A,6734.2373,N,03323.8671,E,000.0,354 .3,090209,013.2,E*7A
Мне надо вытаскивать в 2 массива значения широты и долготы 6734.2373, 03323.8671. Потом с ними еще надо будет проводить кое какие математические операции, но это уже не важно, у меня проблема в разборе самой строки, вобщем никак не получается вытащить значения широт и долгот, хелпните кто может)
держи
PHP код:
#include <stdio.h>
#include <iostream>
#include <fstream>

using namespace std;

int main() {
    
char fname[] = "abc.txt";
    const 
char delim[] = ",";
    
char buff[100];
    
    
fstream in;
    
    
in.open(fnamefstream::in);
    
    if (!
in.is_open()) {
        
cerr << "Unable to open file " << fname << endl;
        return 
0;
    }
    
    
char tmp;
    
char val;
    
double an;
    
    while(
in.getline(buffsizeof(buff))) {
        
tmp strtok(buffdelim);
        while (
tmp != NULL) {
            
tmp strtok(NULLdelim);
            if (!
tmp) break;
            if (
strcmp(tmp"A") == 0) {
                
val strtok(NULLdelim);
                if (
valatof(val);
            } else if (
strcmp(tmp"N") == 0) {
                
val strtok(NULLdelim);
                if (
valatof(val);
                
tmp NULL;
            }
        }
        
printf("A: %.4f, N: %.4f\n"an);
    }
    
    
in.close();
    
    return 
0;

текущие значения ширины и долготы хранятся в переменных a и n. Добавление в массив уже прикрутишь сам, там ничего сложного
 
Ответить с цитированием