C# 从.PDF表单收集数据
我正在尝试开发一个表单,用户可以填写并提交给我,这样我就可以收集数据。表单需要有两个表,表中的行数可变。我们使用的是微软Word,但我们希望更加平台中立。类似于.PDF的东西。一些用户没有互联网连接,因此他们需要通过电子邮件提交。我尝试了AdobeFormScentral,喜欢他们的数据收集功能,但我使用的表单功能只在HTML中工作,需要互联网连接 如果我使用AdobeLiveCycle创建表单,那么我需要一种从表单中收集数据的方法。我不想把8万美元花在Forms Pro上,因为据信它可以让我收集数据。是否有人找到了一个产品或编写了一些东西,从.PDF表单中获取数据XML并将其放入SQL Server数据库 谢谢,C# 从.PDF表单收集数据,c#,pdf,livecycle,xfa,C#,Pdf,Livecycle,Xfa,我正在尝试开发一个表单,用户可以填写并提交给我,这样我就可以收集数据。表单需要有两个表,表中的行数可变。我们使用的是微软Word,但我们希望更加平台中立。类似于.PDF的东西。一些用户没有互联网连接,因此他们需要通过电子邮件提交。我尝试了AdobeFormScentral,喜欢他们的数据收集功能,但我使用的表单功能只在HTML中工作,需要互联网连接 如果我使用AdobeLiveCycle创建表单,那么我需要一种从表单中收集数据的方法。我不想把8万美元花在Forms Pro上,因为据信它可以让我收
保罗你有很多问题都集中在一个问题上。我建议你学习PDF和Adobe,了解你能做什么,不能做什么 PDF表单有几种类型—Acroforms静态表单、静态XFA表单和动态XFA表单。根据您的描述,您需要动态XFA,即可变行数 您还请求脱机处理,这意味着表单必须启用读卡器,以允许远程用户将数据实际保存到表单中 因此,您需要一个可以创建启用Adobe Reader的动态XFA表单的工具—只有Adobe Lifecycle Designer可以创建该表单,但您需要阅读他们的许可证,了解如何将该表单分发给用户
至于处理动态XFA表单服务器端以提取数据,您可以查看。它可以从PDF中提取XML,您可以使用XML解析/放入数据库/任何东西来做您想做的事情。C我最终创建了一个LiveCycle XFA表单,用于提交XML数据,然后使用以下代码阅读此电子邮件
XDocument xDoc = XDocument.Load(xml.FullName);
IEnumerable<XElement> monthlyReportElements = from el in xDoc.Descendants("MonthlyReportForm") select el;
foreach (XElement el in monthlyReportElements)
{
teamName = Helper.GetElement("TeamName", el, true);
reportingDate = string.Format("{0}-{1}", Helper.GetElement("ReportingYear", el, true), Helper.GetElement("ReportingMonth", el, true));
pdfVersion = Helper.GetElement("FileVersionField", el, true);
supervisorEmail = Helper.GetElement("SupervisorEmail", el, true);
return true;
}
internal static string GetElement(string elementName, XElement xElement, bool required)
{
if (xElement == null
|| string.IsNullOrEmpty(elementName)
|| xElement.Element(elementName) == null
|| xElement.Element(elementName).Value == null)
{
if (required)
throw new Exception(string.Format("Required element '{0}' is missing", elementName));
else
return string.Empty;
}
return xElement.Element(elementName).Value;
}
有人告诉我需要重新编写问题,我已经启动了表单,并在用户单击submit按钮时进行了设置,它只是提交了XML数据。我想知道是否有一个SQL server实用程序可以将XML文件拉入数据库表中。