Tag: 数据集

在位置0没有行:从数据集中获取值在c#中的文本框

我正在尝试从Excel中的单元格到C#中的文本框的价值。 我已经使用数据集来从Excel中获取值,但是当从数据集到文本框中取值时,会给出错误 位置0没有排 我也尝试使用Item Array,但没有用。 下面是我的代码: DataSet dsloc = new DataSet(); OleDbDataAdapter daloc = new OleDbDataAdapter(); string connStr = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + txtfilepath.Text + ";Extended Properties=\"Excel 8.0;HDR=Yes;\";"; OleDbConnection con = new OleDbConnection(connStr); string strloc = "select * from [sheet1$A5:A5]"; OleDbCommand cmdloc = new OleDbCommand(strloc, con); con.Open(); dsloc.Clear(); daloc.SelectCommand = cmdloc; daloc.Fill(dsloc); txtloc.Text = dsloc.Tables[0].Rows[0]["Location"].ToString(); 我努力了 […]

csv文件中带有delimiter =','的多个逗号?

我有一个包含对“艺术家风格”,如下所示的csv文件的问题: artist,genre Muse,rock Nirvana,rock Bon Jovi,rock The Police,rock 问题是,csv分隔符是逗号(','),但在某些情况下,有多个艺术家用逗号分隔,如下所示: John Legend, Travis Scott, Teyana Taylor, Cyhi The Prynce & Malik Yusef,r&b 当我在我用来分析它们的软件中导入数据集时,这种情况当然会产生一些麻烦,所以我正在寻找一种编辑文件并解决这个问题的方法。 例如,MS Excel可以只select包含多个逗号的行,然后我可以尝试单独处理这些行(它们不应该太多)。 如果你有更好的想法,我想听听。 谢谢!

使excel中的大数据集变小

我做了一个小testing机器,意外地创build了一个“大”的数据集:6列+/- 550.000行。 我正在寻找的最终结果是一个6行,横轴1 – 550.000测量和垂直行中的值的graphics。 (上限为200左右)。 数据是一个电阻测量,应该在0 – 30之间或者非常大(borken),软件在这些情况下写入'inf'。 我的技能是有限的,所以我到现在为止做了什么: 在Excel中导入。 测量值在0 – 30之间是有价值的,inf对于图不是很好,所以我做了:if(cell> 200){200} else {keep cell value}。 现在做一个图是一个及时的练习,excel不喜欢这个,结果不好。 所以我想取60个测量值的平均值,将行数减less到10.000以下。 所以=平均(H1:H60)但是我不能得到这个工作。 问题: 如何减less这个数据集并获得一个好的图表。 我应该切换到更适用的其他软件吗? FYI:我已经改变了testing设备的软件,以便下次测量一堆测量的平均值…但是我不能重复这个testing。 下载数据集逗号分隔文件17MB的链接

如何从Excel单元格中提取链接url

我有ac#webjob下载,然后读取Excel文件。 其中一列包含我想保存在数据库中的链接。 我目前正在使用ExcelDataReader将Excel文件转换为DataSet,然后遍历行来获取数据。 转换之后,此时所涉及的列只是包含链接文本的string。 从其他阅读中听起来像在Excel中,超链接存储在其他地方,并且在将Excel文件转换为DataSet时不保留该信息。 我没有设置使用ExcelDataReader,但希望find解决scheme来提取这些链接的URL,而无需支付一些第三方软件。 以下是我至今参考的简单代码: FileStream stream = File.Open(fileLocation, FileMode.Open, FileAccess.Read); IExcelDataReader excelReader = ExcelReaderFactory.CreateOpenXmlReader(stream); excelReader.IsFirstRowAsColumnNames = true; DataSet result = excelReader.AsDataSet(); int count = 0; foreach (DataRow row in result.Tables["WorkSheetName"].DataTable.Rows) { var item = new myObject(); item.Prop1 = long.Parse(row["Column3"].ToString()); item.Prop2 = row["Column7"].ToString(); //The link, currently only seeing link text this.myDbContext.myTable.Add(item); await this.myDbContext.SaveChangesAsync(); […]

数据string操作在Excel中

我在Excel 2013中有一个自定义的下拉菜单。它由保存在同一工作簿中的不同工作表上的数据集填充。 每个值都以ID结尾。 我想用“R001”ID值填充a-joining列,所以它有自己的列,如下所示: ReportName ReportID "blahblah R1" R1 "blahblah E1" E1 所以基本上,用户从ReportName列中select一个select,并且ReportID列会自动填充相应的ID。 我已经尝试修改我的数据集进一步适应,没有运气。 我也玩过IF语句,但是我尝试的方法非常有限: =IF(RIGHT(B3,2)<>"","R1","") 任何人都可以请指教? 报告名称是B1,在下面的是下拉B2(它从工作簿中的Sheet2中拉取它的内容)ReportID是C1,在(C2)之下,将是相应的ReportID,我也可以从工作簿中的Sheet2 我需要lockingC2,C3,C4等…所以用户不能编辑,并且数字对应于B2中的值的ID。 从B2复制和粘贴到B2,B3所需的下拉(取决于用户的需求)将不会按照逻辑顺序进行,所以ReportID逻辑必须“检查”ReportName中的值 – 以确保它匹配正确。

“外部表格不是预期的格式”

我尝试用Excel数据填充DataSet(通过OpenXML库来获取表名),但有时我得到错误:“外部表格不是预期的格式”。 所以,我使用相同的文件= * .xlsx(我通过Excel 2010将它从* .xls转换为* .xlsx)。 昨天工作正常,但现在它不工作: public DataTable CreateTable(string sheetName) { sheetName = sheetName + "$"; bool hasHeaders = false; string HDR = hasHeaders ? "Yes" : "No"; string strConn; if (_filePath.Substring(_filePath.LastIndexOf('.')).ToLower() == ".xlsx") strConn = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + _filePath + ";Extended Properties=\"Excel 12.0;HDR=" + HDR + ";IMEX=0\""; // strConn = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" […]

从Excel到DataSet或DataGridView的快速方法

我从Excel工作表获取数据,最终目标是在DataGridView中显示数据。 目前我只是查看excel数据的UsedRange并将其插入到datagridview中。 这工作正常,但有100多行数据时,可能会陷入困境。 我也玩弄了从excel到数据集(使用相同的浪费方法),并且如预期的那样,加载数据大致是相同的时间。 我想知道有没有人有更好的方法的信息? 也许使用Excel文件中的XML? 编辑: 一些附加信息: 这是一个WinForms应用程序,用户将在运行时挑选和加载excel文件。 编辑 一些附加信息的返回: Excel文件位于用户的电脑上。 一般的假设是,他们每次使用应用程序时都会加载不同的文件。 [不知道这是否有帮助,但可能很好知道:)]

结果中省略了Excel中的第一项(DataSet,OleDB)

[Sample.xlsx] Column 0, Row 0 = "ItemA" Column 0, Row 1 = "ItemB" Column 0, Row 2 = "ItemC" Column 0, Row 3 = "ItemD" [应用] DataSet dsData = new DataSet(); string strConn = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=Sample.xlsx;Extended Properties='Excel 12.0;'"; OleDbDataAdapter daGetExcel = new OleDbDataAdapter("SELECT * FROM [Sheet1$]", strConn); daGetExcel.Fill(dsData); foreach (DataRow row in dsData.Tables[0].Rows) { lbExcelData.Items.Add(row[0].ToString()); […]

我怎样才能从Excel文件读取

请你能用我的脚本来帮助我。 我已经做了select从Excel文件,但现在我不知道我怎么能增加价值到我的名单。 我不仅从一个文件中获取来自更多文件的数据。 这是我的实际脚本: 基本button启动事件进行读取。 private void next_Click(object sender, EventArgs e) { for (int i = 0; i < UniqueValue.traceToFile.Count; i++) { ReadFromExcel read = new ReadFromExcel(); read.ReadData(UniqueValue.traceToFile[i]); } } 下一步之后是这样的: class ReadFromExcel : Config { public void ReadData(string fullpath) { DataSet da = new DataSet(); OleDbDataAdapter adapter = new OleDbDataAdapter(); string cell = "C7"; […]

在电子表格中读取date和从DataSet中读取date

我的应用程序使用错误排列的Excel电子表格作为数据源。 我说的devise很糟糕,因为除了finddate和时间的列外,没有每行的唯一标识符。 长话短说,我的应用程序使用每行的date和时间作为标识符来检索行中其他列的信息。 这个想法是,用户将从ListBox中select一个date/时间,应用程序将循环访问DataSet,并在右侧列中查找date/时间,并在该行中显示其余的信息。 我的问题是ListBox控件没有被填充,我不明白为什么… 以下是电子表格中的示例行:(每个字符表示一个单元格边框) Team – FNB | O | 2010/02/18 08:59:24 | 5034 | Frederico Turnbridge | 27839963586 | SA – MOBILE – (ZA) | | 69 | O_NORMAL | | 00:01:06 |R 2.83 这是我的代码: Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim j As Integer = […]