2017-11-29 23 views
1

次のコード行があります。文字列型の日付は、29/11/2017の形式です。 私はNovember 29, 2017としたいと思いました。 String.Formatを追加しようとしましたが、pdfの29/11/2017と同じものが表示されます。月の日、年の日付形式をC#で変更するには

cellValDate.AddElement(new Phrase(String.Format("{0:dddd, MMMM d, yyyy}", 
         txtDate.Text, CultureInfo.CreateSpecificCulture("en-US")), 
         new iTextSharp.text.Font(iTextSharp.text.Font.FontFamily.HELVETICA, 
         10, iTextSharp.text.Font.NORMAL))); 
+1

にそれを渡すことができます。 datetime形式の文字列を使用して文字列を書式化しようとしています。 C#には、文字列に日付が含まれていると考える理由はありません。 – Amy

+2

なぜあなたはexport-to-pdfとタグ付けしましたか? –

答えて

2

あなたはDateTimeオブジェクトにtxtDate.Textに日付文字列値を解析して変換する必要がありまず。

DateTime dt = DateTime.ParseExact(txtDate.Text, "dd/MM/yyyy", CultureInfo.InvariantCulture); 

「月の日、年」の形式に変換します。

string formateDate = dt.ToString("MMMM dd, yyyy"); 

次に、あなたのコード - あなたが最初の `DateTime`にあなたの文字列を解析する必要が

cellValDate.AddElement(new Phrase(formateDate, 
         new iTextSharp.text.Font(iTextSharp.text.Font.FontFamily.HELVETICA, 
         10, iTextSharp.text.Font.NORMAL))); 
+0

ありがとうございますSouvik ..それは完璧に....働いた:) 私はもう一つの状況で同じ問題を抱えています。ここでsent_dateは日付の型で、形式はExcel/MM/DD/YYYYです。私は読んでいますsent_date from excel(10/29/2017)とそれをex_dateに割り当てます。ここで私は "文字列が有効なdatetimeとしてrecoqnizedされていない"というエラーが発生しました..なぜそうですか?私はDatetime.Parseを使用しました。 文字列ex_date = dr [2] .ToString(); DateTime date = DateTime.Parse(ex_date); cmd.Parameters.AddWithValue( "?sentdate"、date); – chetan

+0

@chetan - コメントにフォローアップの質問をしないでください。新しい質問をする。 – Enigmativity

+0

@Enigmativity:尋ねるのは申し訳ありませんが、コンバージョンのみに関連しています... – chetan

関連する問題