2020年8月22日 星期六

別輸給自己的粗心大意

 《轉載》

別輸給自己的粗心大意
撰文者◎Career就業情報董事長翁靜玉
平日的非用餐時間,台北信義路上的知名小籠包店外,依舊擠滿了等候用餐的人潮,其中不乏來自日本、香港的國外觀光客。一進入店內,熱騰騰的氤氳中,端上來的是黃金18摺的小籠包,桌上的牙籤排列成整整齊齊的一圈,裝薑絲的小碟子,同樣整整齊齊,而且長度絕對不會超過碟子外,而他們找給客人的錢,永遠都是新鈔。在小處用心,在細節執著,難怪平均一天能夠賣出7萬顆小籠包,分店還能開到杜拜去。
鴻海集團董事長郭台銘經常說:「魔鬼就藏在細節裡」(Devil is in the details)。一般人經常忽略細節,但事實上,許多致勝關鍵都藏在細節中,忽略細節就是失敗的關鍵。
一家工程公司為了競標政府的百億公共工程,投入近兩年的時間研究,也到國外考察,並和日本設計公司合作,有時台灣團隊到日本開會,有時日本設計公司來台灣討論,公司還花幾百萬元請人做模型。投標前兩個月,公司進入全面備戰狀態,原本必須經常出國的公司領導人也減少出國次數,為這個競標案全力衝刺,總共投入將近2,000小時,全公司上下一心,志在必得。
不久前,該公司終於將團隊努力近兩年的成果集結在投標書中,由於團隊實力堅強,因此他們信心滿滿地送出競標。根據公家單位的投標規定,所有投標廠商在規定時間內,必須將所有資料備齊,一旦密封送標,內容完全無法更改補救,就連想改一個標點符號都不可能。
結果很快就出爐,該公司意外落馬,並沒有得標。說明白一點,其實是根本還沒有上戰場,就被宣判出局,而原因竟然是「資格不符」,因為標書上有一項公司基本資料空白未填寫。
兩年的努力瞬間化為烏有,更讓他們沮喪的是,自己不是輸給其它競標廠商,而是輸給自己的粗心大意。日本團隊對於這樣的結果感到不可思議,也很訝異竟然會發生這麼重大的疏失。因為每張設計圖上,都有主管的簽字,但是卻沒有人注意到那一項基本資料竟然忘了填寫。
如果你是一名主管,千萬不要成為只顧簽名的機器。你可以相信員工的努力、相信員工的拚勁、相信員工的創意,但永遠不要相信員工的細心。當主管的人永遠要扮演最細心的稽核員角色。
如果你是一名員工,永遠要相信自己是一個重要的螺絲釘,要確實將自己的螺絲栓緊。事前多一份準備,事後才能少一分狼狽,一個小疏忽可能會造成公司的大損失。苦勞不會成大器,事後再怎麼解釋,也無濟於事。
考卷一旦交出去了,勝負就已決定,在每次交卷之前,請你一定要看仔細!

2017年10月8日 星期日

2017年7月29日 星期六

給新手主治醫師的話-王宗倫教授

給新手主治醫師的話,我再重載一次⋯
首先,我誠摯的恭喜各位新手VS。
我能提供給各位的建議,第一個就是:小英總統所說的,謙卑丶謙卑丶再謙卑~
現在大家能用最短的時間,完成專科訓練,順利升上VS,多半是時代的產物和市場的需求。過去升VS需要fellowship的養成,論文的發表,以及淘汰賽;現在聽來,彷若歷史。但臨床醫學本在於經驗的累積,以及用心的程度。所以,VS只是虛名,實力才是最重要的!
所以⋯用最謙卑的心情來迎接你的VS生涯吧!
謙卑的去聆聽你的病人所說的每一句話,找出keywords!
謙卑的去了解你的工作夥伴,建立leadership!
謙卑地去看你的每個病人,試想他們如果死在你的手上,會是什麼原因?直到你窮盡思索,仍十分篤定他們會在你手上平安無事!
謙卑地去檢視自己的實力,利用年輕時,好好的充實自己!
拿到專科醫師證書,是人生的開始,絕不是人生的最高峰!願彼此互勉,敬祝大家平安順利、感恩喜悅~

2017年7月15日 星期六

執行 gpedit.msc 後,卻跳出以下錯誤訊息

http://jbear.net/blogs/black/archive/2016/11/27/windows-10.aspx
執行 gpedit.msc 後,卻跳出以下錯誤訊息:
命名空間 'Microsoft.Policies.Sensors.WindowsLocationProvider' 已定義成存放中之另一個檔案的目標命名空間。
檔案 C:\WINDOWS\PolicyDefinitions\Microsoft-Windows-Geolocation-WLPAdm.admx,第 5 行,第 110 欄
這個時候就必須要做比較複雜的設定,
請以系統管理員身分執行【命令提示字元】
並於命令提示字元中執行以下指令,
takeown /F "C:\Windows\PolicyDefinitions\LocationProviderAdm.admx" /A
takeown /F "C:\Windows\PolicyDefinitions\zh-TW\LocationProviderAdm.adml" /A
takeown /F "C:\Windows\PolicyDefinitions\Microsoft-Windows-Geolocation-WLPAdm.admx" /A
takeown /F "C:\Windows\PolicyDefinitions\zh-TW\Microsoft-Windows-Geolocation-WLPAdm.adml" /A
執行完成後才可以擁有此檔案的權限,才能做後續相關的更動。
先將 C:\Windows\PolicyDefinitions\zh-TW\ 下的 LocationProviderAdm.adml 更名為 LocationProviderAdm.adml.bak
以及 C:\Windows\PolicyDefinitions\ 下的 LocationProviderAdm.admx 更名為 LocationProviderAdm.admx.bak
但此時會出現【拒絕存取檔案】,因而無法變更  LocationProviderAdm.adm
後續需要取得檔案權限才能進行變更,請於  LocationProviderAdm.adm 按下滑鼠右鍵,選擇內容後點入。
進入安全頁籤,可以發現到 administrator並沒有修改權限,因此需要點選編輯進入更改,
將  LocationProviderAdm.admx 給予 Administrator 群組有完整控制的權限,按下確定後,
方可進行 C:\Windows\PolicyDefinitions\ 下的 LocationProviderAdm.admx 更名為 LocationProviderAdm.admx.bak 的動作。
接著將 C:\Windows\PolicyDefinitions\ 下的 Microsoft Windows Geolocation-WLPAdm.admx ,重新命名為 LocationProviderADM.admx
如果 Microsoft-Windows-Geolocation-WLPAdm.admx 同樣遇到拒絕存取檔案,請用先前方式賦予  Administrator 群組有完整控制的權限後,方可進行更名。
以及 C:\Windows\PolicyDefinitions\zh-TW\ 下的 Microsoft Windows Geolocation-WLPAdm.adml 重新命名為 LocationProviderADM.adml。
完成此步驟後,在執行 gpedit.msc 就不會再出現相關的錯誤訊息。

2016年10月19日 星期三

瘤遠方轉移到肝


瘤遠方轉移多從血路散播,肝臟血流極為豐富
,肝臟常常是癌遠方轉移的第一個病灶生長處
,平均百分之五十癌手術後發生肝轉移
,故癌的肝轉移並不可怕
,它可能是僅存的少數病灶,可以手術完全切除
,肝功能正常,降低手術的困難度及危險性
,肝內病灶遍佈左右兩葉或技術問題而無法根除手術
.若術前評估為單一病灶單葉分佈,實際切除率可高達95%
癌初級手術後應密切追蹤
,血清檢驗,數據異常或超音波懷疑肝內病灶時,應迅速安排進一步影像檢查

2016年9月11日 星期日

2016年2月29日 星期一

TreeView選單超連結

rootNode.SelectAction = TreeNodeSelectAction.None


 
     
          
     


聯結資料庫,動態產生TreeView

'第一層節點
For Each masterRow As DataRow In dataset.Tables(MasterTable).Rows
Dim masterNode As New _
TreeNode(masterRow(MasterField).ToString())
TreeView1.Nodes.Add(masterNode)

'第二層節點
For Each childRow As DataRow In _
masterRow.GetChildRows("Children")
Dim childNode As New _
TreeNode(childRow(DetailField).ToString())
masterNode.ChildNodes.Add(childNode)
childNode.NavigateUrl = "show1.aspx?class2=" & childRow("ID") 
或是
childNode.NavigateUrl = "show1.aspx"
Next
Next

TreeView.SelectedNodeChanged 事件
引用
<%@ Page Language="VB" %>

PUBLIC
"-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> "http://www.w3.org/1999/xhtml" > "server"> TreeView SelectedNodeStyle Example
"form1"
runat="server">

TreeView SelectedNodeStyle Example

"LinksTreeView" Font-Names= "Arial" ForeColor="Blue" SelectedNodeStyle-ForeColor="Green" SelectedNodeStyle-VerticalPadding="0" OnSelectedNodeChanged="Select_Change" runat="server"> "10" Font-Bold="true" Font-Size="12pt" ForeColor="DarkGreen"/> "5" Font-Bold="true" Font-Size="10pt"/> "5" Font-UnderLine="true" Font-Size="10pt"/> "10" Font-Size="8pt"/> "Table of Contents" SelectAction="None"> "Chapter One"> "Section 1.0"> "Topic 1.0.1"/> "Topic 1.0.2"/> "Topic 1.0.3"/> "Section 1.1"> "Topic 1.1.1"/> "Topic 1.1.2"/> "Topic 1.1.3"/> "Topic 1.1.4"/> "Chapter Two"> "Section 2.0"> "Topic 2.0.1"/> "Topic 2.0.2"/> "Appendix A" /> "Appendix B" /> "Appendix C" />

"Message" runat="server"/>

TreeView 常用的欄位:
int ExpandDepth : 取得或設定預設要展開的深度
TreeNodeCollection Nodes : 所有的節點集合
TreeNode SelectedNode : 被選取的節點(唯讀)
TreeNodeTypes ShowCheckBoxes : 取得或設定核取方塊的顯示方式
string SelectedValue : 被選取的節點之顯示文字(唯讀)

TreeView 常用的事件:
SelectedNodeChanged(object sender, EventArgs e) : 改選別的節點後
TreeNodeCheckChanged(object sender, TreeNodeEventArgs e) : TreeView 內的核取方塊勾選狀態改變後
TreeNodeCollapsed(object sender, TreeNodeEventArgs e) : 節點被收合後
TreeNodeExpanded(object sender, TreeNodeEventArgs e) : 節點被展開後
其中 SelectedNodeChanged 是點選節點的顯示文字才會引發,若點節點前面的 [+] 圖案,只會引發 TreeNodeCollapsed 或 TreeNodeExpanded

TreeNode 常用的欄位:
bool Checked : 取得或設定節點是否被勾選
TreeNodeCollection ChildNodes : 節點下所有的子節點集合
int Depth : 取的節點在 TreeView 的深度(唯讀)
string NavigateUrl : 取得或設定節點的超連結網址
TreeNode Parent : 取得節點的父節點(唯讀)
bool Selected : 取得或設定節點是否被選取
string Text : 取得或設定節點的顯示文字
string ValuePath : 取得從根目錄到此節點的完整路徑 + 名稱 (例如:C:dir1dir2 ; 唯讀)

其中 TreeView 的 Nodes ,和 TreeNode 的 ChildNodes 都是 TreeNodeCollection
TreeNodeCollection 是個集合,常用的欄位和方法:
int Count : 取得節點數(唯讀)
TreeNode this[int index] : 索引子,用來取得某個節點,例如 TreeNode1[2] 可用來取得索引為 2 的節點
void Add(TreeNode child) : 增加一個節點至最尾端
void AddAt(int index, TreeNode child) : 插入一個節點至指定的位置
void Clear() : 移除全部的節點
bool Contains(TreeNode c) : 詢問是否包含某個節點
int IndexOf(TreeNode value) : 詢問某個節點在此集合的位置,若不存在則傳回 -1
void Remove(TreeNode value) : 移除某個節點
void RemoveAt(int index) : 移除某個位置的節點

2016年2月24日 星期三

ASP轉WORD或EXCEL

<%
  Response.AddHeader "content-disposition","attachment; filename=ABC.doc"
  Response.ContentType = "application/vnd.ms-word"
%>
<%
 Response.AddHeader("content-disposition", "attachment; filename= "abc.xls")

 Response.ContentType = "application/vnd.ms-excel"
<%

2016年2月23日 星期二

GridView 依條件更改某列背景顏色

Protected Sub GridView1_RowDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GridView1.RowDataBound
Dim oRow As Data.DataRowView
If e.Row.RowType = DataControlRowType.DataRow Then '取得該列的 Data.DataRowView
oRow = CType(e.Row.DataItem, Data.DataRowView) '依 IsChecked 欄位決定列的顏色
If CBool(oRow.Item("IsChecked")) Then
e.Row.BackColor = Drawing.Color.Green Else e.Row.BackColor = Drawing.Color.Yellow
End If
End If
End Sub

2016年2月4日 星期四

吉祥話英文

馬雲說:
水不動就是死水,人不動就是廢物。 
1.關係靠走動;2.團隊靠活動;
3.客户靠感動;4.資金靠流動;
5.生命靠運動;6.成功靠行動。
比爾蓋茲說:【人生四不要】
1.不要把煩惱帶到床上,因為那是一個睡覺的地方。
2.不要把怨恨帶到明天,因為那是一個美好的日子。
3.不要把憂鬱傳染給別人,因為那是不道德的行為。
4.不要把不良的情緒掛在臉上,因為那是一種令人討厭的表情。

引用

吉祥話英文篇大集合(中英文對照)

英文過年吉祥話1.
四季平安 May you be blessed with peace and safety in all four seasons

英文過年吉祥話2.
出入平安Wishing you always safe where you go  

英文過年吉祥話3.
恭喜發財 Wishing you prosperity and wealth

英文過年吉祥話4.
新年快樂 Happy Chinese New Year

英文過年吉祥話5.
新的一年新的開始 New year, new beginning

英文過年吉祥話6.
大吉大利 Great fortune and great favour
英文過年吉祥話7.
吉祥如意 We wish you good fortune and may all your wishes come true
英文過年吉祥話8.
五福臨門 May fortune come to your door

年底了,再好好做做哈佛大學推薦:
20種快樂的方法
1. Be grateful.
學會感恩。
2. Choose your friends wisely.
明智的選擇朋友。
3. Cultivate compassion.
培養同情心。
4. Keep learning.
不斷學習。
5. Become a problem solver.
學會解決問題。
6. Do what you love.
做你愛做的事情。
7. Live in the present.
活在當下。
8. Laugh often.
經常微笑。
9. Practice forgiveness.
學會原諒。
10. Say thanks often.
常說謝謝。
11. Create deeper connections.
學會深交。
12. Keep your agreement.
信守承諾。
13. Meditate.
反思、冥想。
14. Focus on what you’re doing.
關注你在做的事情。
15. Be optimistic.
樂觀。
16. Love unconditionally.
無條件付出愛。
17. Don’t give up.
永不放棄。
18. Do your best and then let go.
盡力而為,然後隨緣。
19. Take care of yourself.
照顧好自己。
20. Give back.
感恩圖報。
英文過年吉祥話9.
迎春納福 May you welcome happiness with the spring
英文過年吉祥話10.
財源廣進 May wealth come generously to you
英文過年吉祥話11.
國泰民安 The country is at peace and the people are satisfied
英文過年吉祥話12.
喜氣洋洋 May your happiness be as broad as the sea
英文過年吉祥話13.
萬事如意May everything go as you hope                 
英文過年吉祥話14.
身壯力健Have a healthy and active year                  

英文過年吉祥話15.
新春大吉Wishing you good fortune                 
英文過年吉祥話16.
心想事成May all your wishes come true   

英文過年吉祥話17.
恭喜發財Wishing you prosperity                   
                    恭喜發財congratulations and be prosperous(prosperous 指「富足的;繁榮的」)
英文過年吉祥話18.
龍馬精神Wishing you boundless energy

英文過年吉祥話19.
青春常駐Wishing you youthful vigor                 
英文過年吉祥話20.
歲歲平安everlasting peace year after year(everlasting指「持久的;接連不斷的」)
英文過年吉祥話21.
年年有餘may there be bounty every year
英文過年吉祥話22.
恭賀新禧!Best wishes for the year to come!

英文過年吉祥話23.
祝吉星高照!Good luck in the year ahead!
英文過年吉祥話24.
恭喜發財!May you come into a good fortune!
英文過年吉祥話25.
Live long and proper! 多福多壽!
英文過年吉祥話26.
May many fortunes find their way to you!
祝財運亨通!
英文過年吉祥話27.
I want to wish you longevity and health!
願你健康長壽!
英文過年吉祥話28.
Take good care of yourself in the year ahead.
請多保重!
英文過年吉祥話29.
Wishing you many future successes.
祝你今後獲得更大成就。

英文過年吉祥話30.
On this special day I send you New Year's greetings and hope that some day soon we shall be together.
在這特殊的日子,向你致以新年的祝福,希望不久我們能相聚在一起。
英文過年吉祥話31.
I would like to wish you a joyous new year and express my hope for your happiness and good future.
祝新年快樂,並願你幸福吉祥,前程似錦。
英文過年吉祥話32.
May the New Year bring many good things and rich blessings to you and all those you love!
願新年帶給你和你所愛的人許多美好的事物和無盡的祝福!
英文過年吉祥話33.
Rich blessings for health and longevity is my special wish for you in the coming year.
祝你在新的一年裏身體健康,多福多壽。 
英文過年吉祥話34.  
Good luck, good health, hood cheer. I wish you a happy New Year.
祝好運、健康、佳肴伴你度過一個快樂新年。
英文過年吉祥話35.
With best wishes for a happy New Year!
祝新年快樂,並致以良好的祝福。
英文過年吉祥話36.
I hope you have a most happy and prosperous New Year.
謹祝新年快樂幸福,大吉大利。
英文過年吉祥話37.
With the compliments of the season.
祝賀佳節。
英文過年吉祥話38.
May the season's joy fill you all the year round.
願節日的愉快伴你一生。
英文過年吉祥話39.
Season's greetings and best wishes for the New Year.
祝福您,新年快樂。
英文過年吉祥話40.
Please accept my season's greetings.
請接受我節日的祝賀。
英文過年吉祥話41.
To wish you joy at this holy season. Wishing every happiness will always be with you.
恭祝新年吉祥,幸福和歡樂與你同在。
英文過年吉祥話42.
Good health, good luck and much happiness throughout the year.
恭祝健康、幸運,新年快樂。
英文過年吉祥話43.
May the joy and happiness around you today and always.
願快樂幸福永遠伴你左右。
英文過年吉祥話44.
Please accept my sincere wishes for the New Year. I hope you will continue to enjoy good health.
請接受我誠摯的新年祝福,順祝身體健康。
英文過年吉祥話45.
Allow me to congratulate you on the arrival of the New Year and to extend to you all my best wishes for your perfect health and lasting prosperity.
恭賀新禧,祝身體健康、事業發達。
英文過年吉祥話46.
Best wishes for the holidays and happiness throughout the New Year.
恭賀新禧,萬事如意。

2016年1月12日 星期二

網頁開pdf

http://blog.xuite.net/sugopili/computerblog/29773435-%E4%BB%A5+Response.WriteFile%E6%96%B9%E5%BC%8F%EF%BC%8C%E5%9C%A8%E6%96%B0%E8%A6%96%E7%AA%97%E4%B8%AD%E9%96%8B%E5%95%9F%E6%AA%94%E6%A1%88

在超鏈結的 HTML語法中,只要加入 target="_blank",就可用〔新視窗〕方式開啟網站,但 Response.WriteFile不支援 target語法,在 Google爬文時,發現三種解決方案:
1. 將輸出的內容先在 Server端儲存成檔案,再輸出 window.open指令到 Client端,以另開新視窗的方式打開檔案。
2. 依據參考資料1中,璉璉的作法邏輯:點選 welcome.htm檔案中的超鏈結,會觸發 onclick動作(將 document.url設定為 thanks.htm,把網頁轉到 thanks.htm),再執行 href動作,跳出視窗 Test.aspx(Response.WriteFile) ->下載 pdf檔 ->自動關閉。
3. 使用 showModalDialog方式,細節見參考資料2。


2016年1月8日 星期五

三個字

三個金念鑫(ㄒㄧㄣ) 
三個水念淼(ㄇㄧㄠˇ) 
三個火念焱(ㄧㄢˋ)
三個土念垚(ㄧㄠˊ)
三個牛念犇(ㄅㄣ)
三個手念掱(ㄆㄚˊ)
三個目念瞐(ㄇㄛˋ)
三個田念畾(ㄌㄟˊ)
三個馬念驫(ㄅㄧㄠ)
三個羊念羴(ㄕㄢ)
三個犬念猋(ㄅㄧㄠ)
三個鹿念麤(ㄘㄨ)
三個魚念鱻(ㄒㄧㄢ)
三個貝念贔(ㄅㄧˋ)
三個力念劦(ㄒㄧㄝˊ)
三個毛念毳(ㄘㄨㄟˋ)
三個耳念聶(ㄋㄧㄝˋ)
三個車念轟(ㄏㄨㄥ)
三個直念矗(ㄔㄨˋ)
三個龍念龘(ㄉㄚˊ)
三個原念厵(ㄩㄢˊ)
三個雷念靐(ㄅㄧㄥˋ)
三個飛念飝(ㄈㄟ)
三個刀念刕(ㄌㄧˊ)
三個又念叒(ㄖㄨㄛˋ)
三個士念壵(ㄓㄨㄤˋ)
三個小念尛(ㄇㄛˊ)
三個子念孨(ㄓㄨㄢˇ)
三個止念歮(ㄙㄜˋ)
三個風念飍(ㄒㄧㄡ)
三個隼念雥(ㄗㄚˊ)
三個吉念嚞(ㄓㄜˊ)
三個言念譶(ㄊㄚˋ)
三個舌念舙(ㄏㄨㄚˋ)
三個香念馫(ㄒㄧㄣ)
三個泉念灥(ㄒㄩㄣˊ)
三個心念惢(ㄖㄨㄟˇ)
三個白念皛(ㄒㄧㄠˇ)

2016年1月6日 星期三

LABEL換行

引用
http://wangshifuola.blogspot.tw/2011/01/aspnettextboxsqllabel.html

asp.net_textbox→SQL→Label(換行符號處理)

在製作表單的時候常常會有一種流程:

1. 使用者利用textbox輸入文字。

2. 按下送出後,存入資料庫中。

3. 利用label秀出內容,讓其他使用者瀏覽。

這樣的情境非常多,幾乎每一個案子都會需要這種簡單的表單功能,

而其中通常會有某些類似"備註"的欄位,讓使用者可以任意的輸入多行文字。

所以理想狀況下,我們必須要忠實呈現輸入的內容,

如果我們在顯示內容時還是使用textbox,則textbox會幫你處理換行的問題,

但如果使用label來顯示內容就會發現,該內容並沒有依照預期的換行顯示。

所以該怎麼做?可以分成兩個部份來說明:

1. 存入MS SQL裡面的換行符號為:CHAR(10)、CHAR(13),

可以利用

SELECT * FROM Table WHERE UserMessage LIKE '%' + CHAR(10) + '%'
來確定是否有換行符號的寫入。

2. 想要在Label裡面出現換行的效果,必須要使用HTML的語法,也就是

所以必須要利用取代的方式來改變從資料庫讀取出來的內容:

ShowString.Replace("\r\n", "
");

所以,如果你想要在資料庫裡面處理換行就去搜尋CHAR(10),
如果想要在網頁上面換行就搜尋

如果想要在程式裡面換行就是搜尋\r\n(C#),
如果與法使用VB就搜尋vbCrLf。

2015年12月30日 星期三

SQL 查詢 換行符號

SQL 查詢 換行符號
where id like '%'+char(10)+'%'

CHAR 可用於將控制字符插入字符串中。下表顯示了一些常用的控制字符。
控制鍵 值
Tab: CHAR(9)
換行: CHAR(10)
ENTER: CHAR(13)

Ex:
SELECT * FROM TABLE_NAME
WHERE 1=1 AND COLUMN_NAME LIKE '%'+CHAR(13)+'%'

update base_mapping set basename = replace(basename,Char(10),'')
update base_mapping set basename = replace(basename,Char(13),'')

2015年12月29日 星期二

箭號 網頁無法正常顯示

win98嗎
如果是的話用搜尋去找一隻檔案叫ttfcache
他是一隻隱藏檔
你要在安全模式下將他砍掉
重開機之後因該就恢復正常了

開機時,按下CTRL不放,選擇安全模式(Safe mode)。

是哪個語系的網頁字型?如果沒有安裝任何一種韓文字型,Win98/Me會顯示「框框框」,Win2000/XP可能是空白。

顯示凈PDF文件

引用

我想顯示一個PDF文件和它的工作當我點擊保存按鈕,它讓我保存一個ASPX頁而不是PDF文件?這是我:

string path = CanvasWritingStepImages._pdfName;
WebClient client = new WebClient();
Byte[] buffer = client.DownloadData(path);

if (buffer != null)
{
//content-disposition
Response.ContentType = "application/pdf";
Response.AddHeader("content-length", "attachment ;filename=Formulike.PDF");
Response.BinaryWrite(buffer);

}
else
{
logger.Error("Buffer was Null!");
}

我怎樣才能使它的PDF文件,當我保存它嗎?可以打開新標籤如果是這樣的話,怎麼辦

這個問題有 2 個解答。

第 1 個答案

試試這行替換
Response.AddHeader("content-length", "attachment; filename=Formulike.PDF");
這個
Response.AddHeader("Content-Disposition", "attachment; filename=Formulike.pdf");
你也可以使用
Response.AddHeader("Content-Disposition", "inline; filename=Formulike.pdf");
變化從attachmentinline使PDF被顯示在瀏覽器窗口而不是保存/打開對話框提示

第 2 個答案

由於「kelix我找到一種方法使它下載PDF格式和PDF
 Response.AddHeader("Content-Disposition", "inline; filename=Formulike.pdf");
              Response.AddHeader("content-length", "attachment ;filename=Formulike.PDF");
「內聯」是很重要的。

header中Content-Disposition的作用與使用方法

引用

https://msdn.microsoft.com/zh-tw/library/system.net.mime.contentdisposition(v=vs.110).aspx

Content-disposition 是 MIME 協議的擴展,MIME 協議指示 MIME 用戶代理如何顯示附加的文件。Content-disposition其實可以控制用戶請求所得的內容存為一個文件的時候提供一個默認的文件名,文件直接在瀏覽器上顯示或者在訪問時彈出文件下載對話框。 

格式說明: 
content-disposition = "Content-Disposition" ":" disposition-type *( ";" disposition-parm )   

欄位說明: Content-Disposition為屬性名 
disposition-type是以什麼方式下載,如attachment為以附件方式下載 
disposition-parm為默認保存時的文件名 
服務端向客戶端遊覽器發送文件時,如果是瀏覽器支持的文件類型,一般會默認使用瀏覽器打開,比如txt、jpg等,會直接在瀏覽器中顯示,如果需要提示用戶保存,就要利用Content-Disposition進行一下處理,關鍵在於一定要加上attachment: 
 
Response.AppendHeader("Content-Disposition","attachment;filename=FileName.txt"); 

備註:這樣瀏覽器會提示保存還是打開,即使選擇打開,也會使用相關聯的程序比如記事本打開,而不是IE直接打開了。 
Content-Disposition就是當用戶想把請求所得的內容存為一個文件的時候提供一個默認的文件名。具體的定義如下: 
 
content-disposition = "Content-Disposition" ":" 
disposition-type *( ";" disposition-parm ) 
disposition-type = "attachment" | disp-extension-token 
disposition-parm = filename-parm | disp-extension-parm 
filename-parm = "filename" "=" quoted-string 
disp-extension-token = token 
disp-extension-parm = token "=" ( token | quoted-string ) 


那麼由上可知具體的例子: 

Content-Disposition: attachment; filename="filename.xls" 
當然filename參數可以包含路徑信息,但User-Agnet會忽略掉這些信息,只會把路徑信息的最後一部分做為文件名。當你在響應類型為application/octet- stream情況下使用了這個頭信息的話,那就意味著你不想直接顯示內容,而是彈出一個"文件下載"的對話框,接下來就是由你來決定"打開"還是"保存" 了。 

注意事項: 

1.當代碼裡面使用Content-Disposition來確保瀏覽器彈出下載對話框的時候。 response.addHeader("Content-Disposition","attachment");一定要確保沒有做過關於禁止瀏覽器緩存的操作。如下: 
 
response.setHeader("Pragma", "No-cache"); 
response.setHeader("Cache-Control", "No-cache"); 
response.setDateHeader("Expires", 0); 

不然會發現下載功能在opera和firefox裡面好好的沒問題,在IE下面就是不行