2014-05-23 58 views
-5

我正面臨着一個非常基本的問題,在C#編程中錯位或缺少'}'我已經檢查了一切,但它仍然顯示相同的錯誤。請幫我糾正it.Since其非常重要的me.Thank您c#編碼錯誤,顯示預期的'}'

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Threading.Tasks; 
using iTextSharp.text; 

namespace pdf 
{ 
class Program 
{ 
    static void Main(string[] args) 
    {//THIS IS THE PLACE WHERE THE ERROR IS SHOWING 
    private Font _largeFont = new Font(Font.FontFamily.HELVETICA, 18, Font.BOLD,  BaseColor.BLACK); 
    private Font _standardFont = new Font(Font.FontFamily.HELVETICA, 14, Font.NORMAL, BaseColor.BLACK); 
    private Font _smallFont = new Font(Font.FontFamily.HELVETICA, 10, Font.NORMAL, BaseColor.BLACK); 
    public void Build() 
    { 
     iTextSharp.text.Document doc = null; 
     try 
     { 
      // Initialize the PDF document 
      doc = new Document(); 
      iTextSharp.text.pdf.PdfWriter writer = iTextSharp.text.pdf.PdfWriter.GetInstance(doc, 
      new System.IO.FileStream(System.IO.Directory.GetCurrentDirectory() + "\\ScienceReport.pdf", 
       System.IO.FileMode.Create)); 
    // Set margins and page size for the document 
    doc.SetMargins(50, 50, 50, 50); 
    // There are a huge number of possible page sizes, including such sizes as 
    // EXECUTIVE, LEGAL, LETTER_LANDSCAPE, and NOTE 
    doc.SetPageSize(new iTextSharp.text.Rectangle(iTextSharp.text.PageSize.LETTER.Width, 
     iTextSharp.text.PageSize.LETTER.Height)); 
    // Add metadata to the document. This information is visible when viewing the 
    // document properities within Adobe Reader. 
    doc.AddTitle("My Science Report"); 
    doc.AddCreator("M. Lichtenberg"); 
    doc.AddKeywords("paper airplanes"); 

    iTextSharp.text.pdf.PdfPageLabels pdfPageLabels = new iTextSharp.text.pdf.PdfPageLabels(); 
    pdfPageLabels.AddPageLabel(1, iTextSharp.text.pdf.PdfPageLabels.EMPTY, "Basic  Formatting"); 
    pdfPageLabels.AddPageLabel(2, iTextSharp.text.pdf.PdfPageLabels.EMPTY, "Internal Links"); 
    pdfPageLabels.AddPageLabel(3, iTextSharp.text.pdf.PdfPageLabels.EMPTY, "Bullet List"); 
    pdfPageLabels.AddPageLabel(4, iTextSharp.text.pdf.PdfPageLabels.EMPTY, "External Links"); 
    pdfPageLabels.AddPageLabel(5, iTextSharp.text.pdf.PdfPageLabels.EMPTY, "Image"); 
    writer.PageLabels = pdfPageLabels; 
    } 
     catch (iTextSharp.text.DocumentException dex) 
     { 
     // Handle iTextSharp errors 
     } 
     finally 
     { 
     // Clean up 
      doc.Close(); 
      doc = null; 
     } 

    } 
    } 
} 
} 
+4

如何通過縮進來告訴一切正確? –

+2

以可讀的方式格式化您的代碼。它可能會讓你的生活更輕鬆。 –

+0

診斷這些問題的提示是保存文件的副本,然後慢慢刪除方法和代碼,直到錯誤消失(在副本中) – Sayse

回答

0

該字段應該被定義在Main方法之外,它應該是這樣的:

namespace pdf 
{ 
    class Program 
    { 
     private Font _largeFont = new Font(Font.FontFamily.HELVETICA, 18, Font.BOLD,  BaseColor.BLACK); 
     private Font _standardFont = new Font(Font.FontFamily.HELVETICA, 14, Font.NORMAL, BaseColor.BLACK); 
     private Font _smallFont = new Font(Font.FontFamily.HELVETICA, 10, Font.NORMAL, BaseColor.BLACK); 

     static void Main(string[] args) 
     { 
      ...... 
     } 
     ...... 
    } 
} 
5

不能定義裏面的你Main() - 方法
也許字段,屬性或方法嘗試重新安排你的代碼:

static void Main(string[] args) 
{ 
    Program p = new Program(); 
    p.Build(); 
} 

private Font... 
public void Build() 
{ 
    //... 
} 
+0

thanx一噸,你解決了我的問題。我真的很抱歉,如果我的問題似乎有點愚蠢,因爲我在這裏第一次發佈一個問題,可能沒有很好的框架。 –

0

Visual Studio指出了你的確切位置。請使用}代替//THIS IS THE PLACE WHERE THE ERROR IS SHOWING

至少這應該解決您指出的錯誤。