-
Notifications
You must be signed in to change notification settings - Fork 0
/
Ecriture.h
62 lines (46 loc) · 1.35 KB
/
Ecriture.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
/*
* File: Ecriture.h
* Author: camille
*
* Created on March 5, 2013, 8:37 PM
*/
#ifndef ECRITURE_H
#define ECRITURE_H
#include <string>
#include <stdio.h>
#include <sstream>
#include <QSettings>
#include <QCoreApplication>
class Ecriture {
public:
std::string GetNomFichier() const {
return Ecriture::nomFichier;
}
static void SetNomFichier(std::string extension) {
std::ostringstream nom;
nom << "DATA" << Ecriture::numstru << extension;
std::string nomFichier = nom.str();
if(nomFichier == Ecriture::nomFichier)return;
Ecriture::nomFichier = nomFichier;
if(Ecriture::opened)fclose(fp);
QSettings settings("INSAProj", "EditSimuIETR");
std::string path=settings.value("PathSimu",QCoreApplication::applicationDirPath()).toString().toStdString();
std::string nf = path + "/" + Ecriture::nomFichier;
if ((Ecriture::fp = fopen(nf.c_str(), "w+")) != NULL) {
Ecriture::opened = true;
}
}
static void Ecrire(std::string s){
const char* c = s.c_str();
fputs(c, Ecriture::fp);
}
static void setNumStru(int num){
Ecriture::numstru = num;
}
private:
static FILE *fp;
static std::string nomFichier;
static bool opened;
static int numstru;
};
#endif /* ECRITURE_H */