aspose file tools*
The moose likes Java in General and the fly likes UTF date formatting Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of Java 8 in Action this week in the Java 8 forum!
JavaRanch » Java Forums » Java » Java in General
Bookmark "UTF date formatting" Watch "UTF date formatting" New topic
Author

UTF date formatting

Manoj Raghuwanshi
Ranch Hand

Joined: Jun 20, 2004
Posts: 75
Hi,
I am trying to write data to a csv file. It contains a date string.




In the string buffer (cvsBuffer) it is showing the date string in the correct format that I am expecting (mm/dd/YY). But after writing to csv file it is coming in mm/dd/yyyy format. Is it happening due to utf-8 foramtting? If yes please help me how to avoid this date formatting.

Thanks
Manoj
Jim Yingst
Wanderer
Sheriff

Joined: Jan 30, 2000
Posts: 18671
No, I don't think there's any way that UTF-8 would cause that. It seems more likely that there's some other mix-up. Have you looked at the CSV file yourself, or are you relying on some other program which reads the file and parses that field as a Date?


"I'm not back." - Bill Harding, Twister
Manoj Raghuwanshi
Ranch Hand

Joined: Jun 20, 2004
Posts: 75
yes I saw the CSV file.
Ulf Dittmer
Marshal

Joined: Mar 22, 2005
Posts: 39578
    
  27
This is mysterious. You have ascertained that in the StringBuffer the date is in mm/dd, and after it's run through toString and getBytes, it is in dd/mm? You could check whether it's still correct after the toString operation.


Ping & DNS - updated with new look and Ping home screen widget
Manoj Raghuwanshi
Ranch Hand

Joined: Jun 20, 2004
Posts: 75
No, after toString its is mm/dd/yy but after getBytes(�utf-8�) it becomes mm/dd/yyyy.
If it is 08/05/07 it becomes 08/05/2007
Manoj Raghuwanshi
Ranch Hand

Joined: Jun 20, 2004
Posts: 75
No, after toString its is mm/dd/yy but after getBytes(�utf-8�) it becomes mm/dd/yyyy.
If it is 08/05/07 it becomes 08/05/2007
Jim Yingst
Wanderer
Sheriff

Joined: Jan 30, 2000
Posts: 18671
Frankly, what you describe does not seem to be possible. I think there's likely been some mixup either before or after the getBytes() method call. To figure this out, I recommend putting some print statements as close as possible to the call, before and after:

This should give a better picture of where the problem really lies.
Ulf Dittmer
Marshal

Joined: Mar 22, 2005
Posts: 39578
    
  27
I just ran the following, and it confirms that all is well in this part of the code (meaning it prints "true").

Where are you seeing the "2007"? Some programs -like Excel- format CSV data upon import, thereby turning 2-digit years into 4-digit years, so that would not be a valid test.
Manoj Raghuwanshi
Ranch Hand

Joined: Jun 20, 2004
Posts: 75
Yes Ulf it is indeed Excel issue. Excel is formatting the date. Thanks Ulf,Jim.
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: UTF date formatting
 
Similar Threads
Please Comment on Data Section
Date formatting
how to change the date,Time format after accessing it from the database
Code review required for converting dateformat
string to date conversion