kabc Library API Documentation

kabcargl.cpp

00001 /*
00002     This file is part of libkabc.
00003     Copyright (c) 2001 Cornelius Schumacher <schumacher@kde.org>
00004 
00005     This library is free software; you can redistribute it and/or
00006     modify it under the terms of the GNU Library General Public
00007     License as published by the Free Software Foundation; either
00008     version 2 of the License, or (at your option) any later version.
00009 
00010     This library is distributed in the hope that it will be useful,
00011     but WITHOUT ANY WARRANTY; without even the implied warranty of
00012     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00013     Library General Public License for more details.
00014 
00015     You should have received a copy of the GNU Library General Public License
00016     along with this library; see the file COPYING.LIB.  If not, write to
00017     the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
00018     Boston, MA 02111-1307, USA.
00019 */
00020 
00021 #include <qfile.h>
00022 #include <qtextstream.h>
00023 #include <qregexp.h>
00024 
00025 #include <kaboutdata.h>
00026 #include <kapplication.h>
00027 #include <kdebug.h>
00028 #include <kcmdlineargs.h>
00029 #include <kglobal.h>
00030 #include <kstandarddirs.h>
00031 
00032 #include "stdaddressbook.h"
00033 
00034 using namespace KABC;
00035 
00036 int main(int argc,char **argv)
00037 {
00038   KAboutData aboutData("kabcargl","Fix broken pre3.0rc3 format","0.1");
00039   aboutData.addAuthor("Cornelius Schumacher", 0, "schumacher@kde.org");
00040 
00041   KCmdLineArgs::init(argc,argv,&aboutData);
00042 
00043   KApplication app;
00044 
00045   QString filename = StdAddressBook::fileName();
00046   
00047   QFile f( filename );
00048   if ( !f.open( IO_ReadOnly ) ) {
00049     kdDebug() << "Error opening file '" << filename << "' for reading." << endl;
00050     return 1;
00051   }
00052   
00053   QTextStream t( &f );
00054   t.setEncoding(QTextStream::UnicodeUTF8);
00055   QString text = t.read();
00056   f.close();
00057   
00058   text = QString::fromUtf8( text.local8Bit() );
00059   text.replace( QRegExp( "\n" ), "\r\n" );
00060   
00061   if ( !f.open( IO_WriteOnly ) ) {
00062     kdDebug() << "Error opening file '" << filename << "' for writing." << endl;
00063     return 1;
00064   }
00065   
00066   QTextStream t2( &f );
00067   t2.setEncoding(QTextStream::UnicodeUTF8);
00068   t2 << text;
00069   f.close();
00070 }
KDE Logo
This file is part of the documentation for kdelibs Version 3.1.0.
Documentation copyright © 1996-2002 the KDE developers.
Generated on Wed Oct 8 12:22:08 2003 by doxygen 1.2.18 written by Dimitri van Heesch, © 1997-2001