Welcome!

Welcome to the official BlackBerry Support Community Forums.

This is your resource to discuss support topics with your peers, and learn from each other.

inside custom component

Native Development

Reply
Super Contributor
Posts: 253
Registered: ‎08-19-2010
My Device: BB10, Playbook, 9900, 9800, 9700, 9550, 9530, 9500, 8700.
My Carrier: TT
Accepted Solution

How to create a variable file name with count and date??

Purpose: Create a variable file name with count and date

 

Error: get a lot of error. Do you know how to modify my code??

 

Question:How to create a variable file name with count and date??

 

Mini code:

std::string *rawfilepath;
std::string *rawfilename;

 

rawfilepath = "./shared/documents/";
rawfilename = rawfilepath + "rawlog-" + 0 + "-.txt";
QFile file(rawfilename);
if (file.exists()) {
    rawfilenamecount++;
    rawfilename = "./shared/documents/rawlog-" + rawfilenamecount + "-.txt";
}

 

Thanks your attention,

 

-Fight with BB10
Contributor
Posts: 40
Registered: ‎05-14-2013
My Device: Z10
My Carrier: none

Re: How to create a variable file name with count and date??

You use the 'std::string' which is a really bad class, try to avoid that as much as possible!

 

Use QString instead.

 

QString foo("shared/documents") + "rawlog-" + QString::number(0) + "-.txt";

QFile file(foo);

 

etc.

Super Contributor
Posts: 253
Registered: ‎08-19-2010
My Device: BB10, Playbook, 9900, 9800, 9700, 9550, 9530, 9500, 8700.
My Carrier: TT

Re: How to create a variable file name with count and date??

Thank tzander to remind me the idea. Cascades method is not good for me because all core code is written by Native. If I change from string to QString, I need to change many codes.

 

Solution is at below.

while( access( rawfilename, F_OK ) != -1 ) {
    rawfilenamecount++;
    sprintf(rawfilename,format,rawfilenamecount);
    fprintf(stderr,"file exists");
}

rawlog = fopen(rawfilename, "w"); //save file into a specific file path.
fprintf(rawlog, "System Time(ms)");

-Fight with BB10