Wort Datei Volltextsuch

2fast4you87

Erfahrenes Mitglied
Hallo Leute,

Ich möchte immer aus versch. Worddateien einen kleinen Ausschnitt in eine Datei / Datenbank speichern, sodass ich so eine Art von Volltextsuche machen kann.

habe schon so etwas fertig gemacht, nur ein paar fragen dazu.
Code:
#ifndef __google
#define __google
	#include <iostream>
	#include <string.h>
	#include <conio.h>
	#include <fstream>
	#include <sstream>
	#include <conio.h>
	#include <windows.h>
	using namespace std;
#endif

int main(int argv, char *argc[])
{
	string strData = "Stationenlernen.doc";
	ifstream in(strData.c_str(),ios::in | ios::binary);
	ofstream out("out.test", ios::out | ios::binary | ios::app);

	in.seekg(2560,ios::beg);
	int pos = 2560;

	while(!in.eof()) {
			
		if((char)in.get() == 0x0D && in.tellg() > 2569) {
			pos = in.tellg();
			if(in.get() == 0x0D)
			 if(in.get() == 0x0D)
			  if(in.get() == 0x0D)
			   break;

			  in.seekg(pos,ios::beg);
		}
		else {
		in.seekg(((int)in.tellg()-1),ios::beg);
		 if((char)in.get() != 0x0D) {
	      in.seekg(((int)in.tellg()-1),ios::beg);
		  out << (char)in.get();
		 }
		}
	}

	in.close();
	out.close();
	return 0;
}

1.) Kann man den Code schneller machen, sprich Optimieren?
2.) Jetzt bricht er ja ab wenn er den Hex Code 0D 0D 0D 0D, denn ich kenn das ende von einer Worddatei nicht, kenns sich da jmd besser aus?


Gruß 2fast ...
 
C++ Profiler, Geschwindigkeitsmessung, Code Performance

Je nach verwendetem Framework, IDE und OS gibt es natürlich auch die verschiedensten Profiler für unterschiedliche Geschmäcker.

Hier mal eine Auswahl interessanter Profiler für C++ :

Also wer die Wahl hat, hat die Qual
 
Wenn ich es richtig verstanden habe, willst Du ein Worddoument einlesen "Stationenlernen.doc". Es geht also nicht primär um das Einlesen einer Wort-Datei, oder ?
Wenn es sich um ein Worddocument handeln sollte, benötigst Du erst einmal eine Software, die aus dem Worddocument den reinen Textteil extrahiert. Wenn es so sein soltle, ist die Performance in erster Linie abhängig von diesem "Reader".
Hier findest Du einen
http://www.winfield.demon.nl/
der sehr gut funktioniert.

Gruß
Gerhard
 
Für PDF
http://www.pdflib.com/products/tet/download.html

Für Excel und Powerpoint kenne ich nichts. Wenn Du allerdings auf dem entsprechenden Rechner MS Office (am besten die aktuelleste Version) vorraussetzen kannst, könntest Du Office als Automationsserver verwenden. Sicherlich optimaler und vor allem Kostengünstiger wäre Openoffice nur habe ich damit keinerlei Erfahrung

Gruß
Gerhard
 
Zurück