|
Michael Dunn wrote: will break on some DBCS paths
Sry i didn't know whts DBCS path is. Can u give me an example..
Do your Duty and Don't expect the Result Rate this Post, if I helped You
|
|
|
|
|
|
Oh its Double Byte.. i thought it as DataBase and
The code is for Single byte charecter set.
Function Parameter, return value, APIs used all are for single byte, and you cann't pass a DBCS or MBCS to this method, so it won't break.
Do your Duty and Don't expect the Result Rate this Post, if I helped You
|
|
|
|
|
|
I was trying to remember it's name. PathFindFileName is the way!
Press: 1500 to 2,200 messages in just 6 days? How's that possible sir?
Dr.Brad :Well,I just replied to everything Graus did and then argued with Negus for a bit.
|
|
|
|
|
For Shell API's look for API's starting with Path.. or SH.. . Thats the way to go.
|
|
|
|
|
Thank you prasad_som,
I found this works aswell....
HANDLE Handle;
WIN32_FIND_DATA FindData;
Handle = FindFirstFile(fileName, &FindData);
if(FindData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY);
else
{
Ptr = FindData.cFileName;
.....
Regards,
The only programmers that are better than C programmers are those who code in 1's and 0's.....
Programm3r
My Blog: ^_^
|
|
|
|
|
prasad_som wrote: Use PathFindFileName[^] instead.
Actually PathStripPath() is the right one to use na?
nave
|
|
|
|
|
Naveen R wrote: Actually PathStripPath() is the right one to use na?
You can use this function,too. In addition to originally suggested.
Remember PathStripPath strips original string.
|
|
|
|
|
What made me think the PathStripPath better is that, in the docmentation of the PathFindFileName in MSDN, it says the function "Searches a path for a file name.". I think this will invoke some disc operation where as the PathStripPath only need to work on the buffer. I am not sure..... What do you think about this?
nave
|
|
|
|
|
Naveen R wrote: "Searches a path for a file name.".
This means, searches path mentioned in buffer.
Naveen R wrote: I think this will invoke some disc operation
No, it doesn't.
Naveen R wrote: where as the PathStripPath only need to work on the buffer
As said earlier, both version works on buffer. But, PathStripPath strips(modifies) original buffer , passed as input. Which may be not needed. Again, need to use these functions according to need.
|
|
|
|
|
prasad_som wrote: This means, searches path mentioned in buffer.
I misunderstood..
thank you prasad
nave
|
|
|
|
|
Welcome.
|
|
|
|
|
Before return LastPtr line add the line LastPtr++ and everything wil be fine.
Happy coding
Get the facts or facts will get you and when you get them, get them right or they will get you wrong.
Happy Coding
|
|
|
|
|
I have to implement a string search in a file I have problem in using fgetc because i am alternative characters from the file.
S.Yamini
|
|
|
|
|
Can you explain it better?
Nobody can give you wiser advice than yourself. - Cicero
ப்ரம்மா
|
|
|
|
|
|
yaminisridaran wrote: because i am alternative characters from the file
I think you missed some thing here...
Generally to find a string, use comparision APIs, say strcmp, CString::Compare and also APIs are available for case in sensitive comparing..
Do your Duty and Don't expect the Result Rate this Post, if I helped You
|
|
|
|
|
Actually I have a txt file and i want to fetch the last string of the file.Can u help in this
S.Yamini
|
|
|
|
|
yaminisridaran wrote: I have a txt file and i want to fetch the last string of the file
Actually i donno any API for this, but i'll you an algo for this,
1) Open the File as Random file
2) Move the file pointer to end of file (using seek method)
--inside loop
3) Decrement the pointer and read a char (to read the char before, using seek method)
4) check for delimiting chars (say space, or some thing else)
5) if not a delimiting char then append the char to a string
6) decrement the file pointer (to set to previous position, using seek method)
7) goto step 3 (have to decrement again, to get previous char)
8) if its a delimiting char then break the loop.
--end of loop
Now you got the last word in the file, but it'll be in reverse. So apply strrev and get the original string..
Do your Duty and Don't expect the Result Rate this Post, if I helped You
|
|
|
|
|
I tried this procedure but the decrementing the pointer and reading the data gives me data as -1
S.Yamini
|
|
|
|
|
Can you show some code..which tells hw you implemented
Do your Duty and Don't expect the Result Rate this Post, if I helped You
|
|
|
|
|
FILE *fp;
int a;
CString m_buffer;
fp=fopen("yamini.txt","r+");
fseek (fp , 0 , SEEK_END);
fp--;
while(1)
{
a=fgetc(fp);
if(a==32)
break;
else
m_buffer+=(char)a;
fp--;
}
S.Yamini
|
|
|
|
|
see the comments and changes
FILE *fp;
int a;
CString m_buffer("");
fp=fopen("yamini.txt","r+");
fseek (fp , 0 , SEEK_END);
while(1)
{
fseek(fp, -1, SEEK_CUR);
a=fgetc(fp);
if(a==32)
break;
else
m_buffer+=(char)a;
fseek(fp, -1, SEEK_CUR);
}
Do your Duty and Don't expect the Result Rate this Post, if I helped You
|
|
|
|
|
What defines (i.e., delimits) the "last string?"
"Approved Workmen Are Not Ashamed" - 2 Timothy 2:15
"Judge not by the eye but by the heart." - Native American Proverb
|
|
|
|