//장바구니 물건 삭제 private void button2_Click(object sender, EventArgs e) { if (buylist.Count <= 0 || listBox1.SelectedIndex == -1) { return; } int a = listBox1.SelectedIndices.Count; BuyDate[] buys = new BuyDate[a]; for (int i = 0; i < a; i++) { buys[i] = buylist[listBox1.SelectedIndices[i]]; } for (int i = 0; i < a; i++) { buylist.Remove(buys[i]); } listBox1.Items.Clear(); foreach (BuyDate bu in buylist) { listBox1.Items.Add(bu.Title); } AllMoney(); }
public void SearchBuy(string str, string sort, string start, string display) { buydateList.Clear(); XmlString = Find(str, sort, start, display); doc = new XmlDocument(); doc.LoadXml(XmlString); //doc.Save("Search.xml"); //=========================== XmlNode node = doc.SelectSingleNode("rss"); XmlNode n = node.SelectSingleNode("channel"); BuyDate simage = null; foreach (XmlNode el in n.SelectNodes("item")) { simage = BuyDate.MakeBuyData(el); buydateList.Add(simage); } }
//엑셀파일 불러오기 public void ReadExcel(string path) { // path는 Excel파일의 전체 경로입니다. // 예. D:\test\test.xslx Application excelApp = null; Workbook wb = null; Worksheet ws = null; string title = string.Empty; int lprice = 0; int hprice = 0; string url = string.Empty; int type = 0; string image = string.Empty; try { excelApp = new Application(); wb = excelApp.Workbooks.Open(path); // path 대신 문자열도 가능합니다 // 예. Open(@"D:\test\test.xslx"); ws = wb.Worksheets.get_Item(1) as Worksheet; // 첫번째 Worksheet를 선택합니다. Range rng = ws.UsedRange; // '여기' // 현재 Worksheet에서 사용된 셀 전체를 선택합니다. object[,] data = rng.Value; // 열들에 들어있는 Data를 배열 (One-based array)로 받아옵니다. // -->, i = 0 for (int r = 2; r <= data.GetLength(0); r++) { for (int c = 1; c <= data.GetLength(1); c++) { if (data[r, c] == null) { continue; } if (c == 1) { title = (string)(rng.Cells[r, c] as Range).Value2; // 열과 행에 해당하는 데이터를 문자열로 반환 } else if (c == 2) { lprice = (int)(rng.Cells[r, c] as Range).Value2; // 열과 행에 해당하는 데이터를 문자열로 반환 } else if (c == 3) { hprice = (int)(rng.Cells[r, c] as Range).Value2; // 열과 행에 해당하는 데이터를 문자열로 반환 } else if (c == 4) { url = (string)(rng.Cells[r, c] as Range).Value2; } else if (c == 5) { type = (int)(rng.Cells[r, c] as Range).Value2; } else { image = (string)(rng.Cells[r, c] as Range).Value2; // 열과 행에 해당하는 데이터를 문자열로 반환 } } BuyDate buy = new BuyDate(title, url, image, lprice, hprice, type); buylist.Add(buy); // Data 빼오기 // data[r, c] 는 excel의 (r, c) 셀 입니다. // data.GetLength(0)은 엑셀에서 사용되는 행의 수를 가져오는 것이고, // data.GetLength(1)은 엑셀에서 사용되는 열의 수를 가져오는 것입니다. // GetLength와 [ r, c] 의 순서를 바꿔서 사용할 수 있습니다. } wb.Close(true); excelApp.Quit(); listBox1.Items.Clear(); PrintBuylist(); AllMoney(); } catch (Exception ex) { //wb.Close(true); throw ex; } finally { ReleaseExcelObject(ws); ReleaseExcelObject(wb); ReleaseExcelObject(excelApp); //wb.Close(true); } }