2009-06-10 36 views
289

MS Excel có các loại MIME quan sát sau:Setting loại mime cho excel tài liệu

  • application/vnd.ms-excel (chính thức)
  • application/msexcel
  • application/x-msexcel
  • application/x-ms-excel
  • application/x-excel
  • application/x-dos_ms_excel
  • application/xls
  • application/x-xls
  • application/vnd.openxmlformats-officedocument.spreadsheetml.sheet (xlsx)

Có một loại mà sẽ làm việc cho tất cả các phiên bản? Nếu không, chúng ta có cần thiết lập response.setContentType() với mỗi loại mime riêng lẻ không?

Ngoài ra, chúng tôi sử dụng tệp trực tuyến trong ứng dụng của chúng tôi để hiển thị tài liệu (không chỉ excel - bất kỳ loại tài liệu nào). Trong khi làm như vậy, làm thế nào chúng ta có thể giữ lại tên tập tin nếu người dùng chọn để lưu tệp - hiện tại, tên của servlet làm cho tệp xuất hiện dưới dạng tên mặc định.

+4

Tổng quát hơn, cách tốt nhất để tìm hiểu những gì MS mình nghĩ là đúng loại là để tìm thấy một hộp với phiên bản mới nhất cài đặt và nhìn vào 'HKCR/.xls' 's ' Giá trị Loại nội dung' trong sổ đăng ký. – Rup

+3

"application/vnd.ms-office" là một loại mime khác cho các tệp XLS. – herrjeh42

+0

'application/vnd-xls' cũng hoạt động với các tệp' .xls'. – mbomb007

Trả lời

284

Tôi tin rằng các tệp chuẩn MIME type for Excelapplication/vnd.ms-excel.

Về tên của tài liệu, bạn nên thiết lập các tiêu đề sau đây trong các phản ứng:

header('Content-Disposition: attachment; filename="name_of_excel_file.xls"'); 
+14

sự khác nhau giữa ứng dụng/msexcel và ứng dụng/vnd.ms-excel là gì? –

+5

Nếu bạn muốn hiển thị tài liệu trong trình duyệt (nếu được hỗ trợ) thì Nội dung-Bố trí cần phải là 'nội dòng'. Xem http://stackoverflow.com/questions/1395151/content-dispositionwhat-are-the-differences-between-inline-and-attachment – flash

+2

Bạn nên tránh sử dụng Content-Disposition trong HTTP, nó có những cân nhắc về bảo mật. Nội dung-Bố trí chỉ dành cho email. Xem http://stackoverflow.com/questions/1012437 để biết thêm thông tin. –

137

Thức dậy một chủ đề cũ ở đây tôi nhìn thấy, nhưng tôi cảm thấy sự thôi thúc để thêm "mới" .xlsx định dạng.

Theo số http://filext.com/file-extension/XLSX phần mở rộng cho .xlsx là application/vnd.openxmlformats-officedocument.spreadsheetml.sheet. Nó có thể là một ý tưởng tốt để bao gồm nó khi kiểm tra các loại mime!

34

Bạn nên thường xuyên sử dụng dưới dạng MIME nếu bạn muốn để phục vụ file excel trong xlsx định dạng

application/vnd.openxmlformats-officedocument.spreadsheetml.sheet 
0

Đối với những ai vẫn còn ngại với điều này sau khi sử dụng tất cả các loại MIME có thể được liệt kê trong câu hỏi :

Tôi thấy rằng iMac cũng có xu hướng ném một loại "văn bản/xls" MIME cho các tệp XLS Excel, hy vọng điều này sẽ hữu ích.

4

tôi đã thiết lập định dạng MIME từ mã NET như sau -

File(generatedFileName, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet") 

Ứng dụng của tôi tạo ra excel sử dụng OpenXML SDK. kiểu MIME này làm việc -

vnd.openxmlformats-officedocument.spreadsheetml.sheet 
Các vấn đề liên quan