Witam wszystkich, mam plików CSV, które są w tym formacie:Jak mogę odczytać przesłany plik CSV bez zapisywania go na serwerze?
**CSV Format1**
||OrderGUID||OrderItemID||Qty||SKUID||TrackingNumber||TotalWeight||DateShipped||DateDelivered||ShippingStatusId||OrderShippingAddressId
||5 ||3 ||2 ||12312||aasdasd ||24 ||2012-12-2010|| || 10025 ||10028
||5 ||4 ||3 ||113123||adadasdasd ||22 ||2012-12-2012|| ||10026 ||10028
**CSV Format2**
||"OrderGUID"||"OrderItemID"||"Qty"||"SKUID"||"TrackingNumber"||"TotalWeight"||"DateShipped"||"DateDelivered"||"ShippingStatusId"||"OrderShippingAddressId"||
||"5" ||"3" ||"2" ||"12312"||"aasdasd" ||"24" ||"2012-12-2010"||"" || "10025" ||"10028"||
||"5" ||"4" ||"3" ||"113123"||"adadasdasd" ||"22" ||"2012-12-2012"|| "2012-12-2010" ||"10026" ||"10028"||
muszę przeczytać te pliki bez zapisywania ich na serwerze. Czy ktoś może mi pomóc? Jak mogę odczytać te pliki i wstawić je do bazy danych? Jak mogę przyciąć znaki specjalne z plików?
To właśnie staram się robić na upload plików:
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult ImportTrackingNumber(FormCollection form,HttpPostedFileBase UploadedFile,TrackingNumbersModel Trackingnumbers)
{
if (UploadedFile != null)
{
var allowedExtensions = new[] {".xlsx", ".csv"};
if (UploadedFile.ContentLength > 0)
{
var extension = Path.GetExtension(UploadedFile.FileName);
if (extension == ".xlsx")
{
//Need To code For Excel Files Reading
}
else if (extension == ".csv")
{
//string filename = Path.GetFileName(UploadedFile.PostedFile.InputStream);
StreamReader csvreader = new StreamReader(UploadedFile.FileName);
DataTable dt;
}
}
}
return View();
}
'StreamReader csvreader = nowy StreamReader (UploadedFile.InputStream); '? –
W nawiązaniu do komentarza Mario: właściwość 'FileName' zwraca nazwę lub ścieżkę przesłanego pliku ** na kliencie **. Twój kod działa na serwerze i nie może bezpośrednio odczytać plików od klienta. –
@RichardDeeming Jak używać delimeter do usuwania znaków specjalnych – SoftwareNerd