導航:首頁 > 文檔加密 > c語言編程pdf

c語言編程pdf

發布時間:2025-05-04 23:56:13

A. 關於用C#生成pdf

是否可以考慮使用WordDocument.SendFax方法?

參考一下這個java的程序,你有一些收獲。
java 實現word轉為 tif格式??急

1.我用列印的方式沒有得到任何文件(用的是虛擬傳真列印機)
2.我用JACOB老是缺少組建異常
3.用jawin調用word轉為pdf的方法出異常

1.我用列印的方式沒有得到任何文件(用的是虛擬傳真列印機)

public class Y {
/*列印指定的文件*/
public void printFileAction()
{
//構造一個文件選擇器,默認為當前目錄
JFileChooser fileChooser = new JFileChooser("c:\\");
int state = fileChooser.showOpenDialog(null);//彈出文件選擇對話框
if (state == fileChooser.APPROVE_OPTION)//如果用戶選定了文件
{
File file = fileChooser.getSelectedFile();//獲取選擇的文件
//構建列印請求屬性集
PrintRequestAttributeSet pras = new HashPrintRequestAttributeSet();
//設置列印格式,因為未確定文件類型,這里選擇AUTOSENSE
DocFlavor flavor = DocFlavor.INPUT_STREAM.AUTOSENSE;
//查找所有的可用列印服務
PrintService printService[] = PrintServiceLookup.lookupPrintServices(flavor, pras);
//定位默認的列印服務
PrintService defaultService = PrintServiceLookup.lookupDefaultPrintService();
//顯示列印對話框
PrintService service = ServiceUI.printDialog(null, 200, 200, printService
, defaultService, flavor, pras);
if (service != null)
{
try
{
DocPrintJob job = service.createPrintJob();//創建列印作業
FileInputStream fis = new FileInputStream(file);//構造待列印的文件流
DocAttributeSet das = new HashDocAttributeSet();
Doc doc = new SimpleDoc(fis, flavor, das);//建立列印文件格式
job.print(doc, pras);//進行文件的列印
}
catch(Exception e)
{
e.printStackTrace();
}
}
}
}

}

2.我用JACOB老是缺少組建異常
package com;
import com.jacob.com.*;
import com.jacob.activeX.*;

public class Dispatch_MSWord {
private ActiveXComponent wordCom=null;
private Object wordDoc=null;
private final Variant False=new Variant(false);
private final Variant True=new Variant(true);

/**
* 打開word文檔
* @param filePath word文檔
* @return 返回word文檔對象
*/
public boolean openWord(String filePath){
//建立ActiveX部件
wordCom=new ActiveXComponent("Word.Application");

try{
//返回wrdCom.Documents的Dispatch
Object wrdDocs=wordCom.getProperty("Documents").toDispatch();
//調用wrdCom.Documents.Open方法打開指定的word文檔,返回wordDoc
wordDoc=Dispatch.invoke((Dispatch) wrdDocs,"Open",Dispatch.Method,new Object[]{filePath},new int[1]).toDispatch();
return true;
}
catch(Exception ex){
ex.printStackTrace();
}
return false;
}

/**
* 關閉word文檔
*/
public void closeWord(){
//關閉word文件
wordCom.invoke("Quit",new Variant[]{});
}

/**
* 打開word,調用word中的宏
* @param filePath word文件路徑
* @param macroName 被調用的宏名字
* @param parameter 調用宏的參數數組
*/
public void callWordMacro(String filePath,String macroName,Object parameter[]){

if (!openWord(filePath)){
closeWord();
return;
}
else{
//使用方法傳入的參數parameter調用word文檔中的MyWordMacro宏
Dispatch.invoke((Dispatch)wordDoc,macroName,Dispatch.Method,parameter,new int[1]);
closeWord();
}
}

/**
* 打開word,替換其中的文字
* @param filePath word文件路徑
* @param sourceStr 源文字
* @param replaceStr 替換後的文字
*/
public void callReplaceWord(String filePath,String sourceStr,String replaceStr){

if (!openWord(filePath)){
closeWord();
return;
}

try{
//獲得Selection對象
Dispatch selectDoc=wordCom.getProperty("Selection").toDispatch();
//獲得Find對象
Dispatch find = Dispatch.call(selectDoc,"Find").toDispatch();

//設置替換的方法屬性,但是不支持ReplaceWith的屬性,而且使用Replancement.Text屬性也無濟於事。
Dispatch.put(find,"Text",sourceStr);

//所以使用Find對象的Execute(FindText, MatchCase, MatchWholeWord, MatchWildcards, MatchSoundsLike, MatchAllWordForms, Forward, Wrap, Format, ReplaceWith, Replace, MatchKashida, MatchDiacritics, MatchAlefHamza, MatchControl)方法
//詳細內容見MSDN的office2000開發文檔
Variant True=new Variant(true);
Variant False=new Variant(false);
Variant FindText=new Variant(sourceStr);
Variant ReplaceWith=new Variant(replaceStr);
Variant Format=False;
Variant Forward=True;
Variant MatchCase=True;
Variant MatchWholeWord=True;
Variant MatchWildcards=False;
Variant MatchSoundsLike=False;
Variant MatchAllWordForms=False;
int wdFindWrap_FindContinue=1;
Variant Wrap=new Variant(wdFindWrap_FindContinue);
int wdReplace_ReplaceAll=2;
Variant Replace=new Variant(wdReplace_ReplaceAll);

//使用callN方法調用execute方法
Dispatch.callN(find,"Execute",new Variant[]{
FindText, MatchCase, MatchWholeWord, MatchWildcards,
MatchSoundsLike, MatchAllWordForms, Forward, Wrap,
Format, ReplaceWith, Replace
});
Dispatch.invoke((Dispatch) wordDoc,"SaveAs",Dispatch.Method,new Object[]{"c:\\111.doc"},new int[1]);
closeWord();
}
catch(Exception ex){
ex.printStackTrace();
}
finally{
closeWord();
}
}

/**
* 將word文檔列印為PS文件後,使用Distiller將PS文件轉換為PDF文件
* @param sourceFilePath 源文件路徑
* @param destinPSFilePath 首先生成的PS文件路徑
* @param destinPDFFilePath 生成PDF文件路徑
*/
public void docToPDF(String sourceFilePath,String destinPSFilePath,String destinPDFFilePath){
if (!openWord(sourceFilePath)){
closeWord();
return;
}
//建立Adobe Distiller的com對象
ActiveXComponent distiller=new ActiveXComponent("PDFDistiller.PDFDistiller.1");
try{
//設置當前使用的列印機,我的Adobe Distiller列印機名字為"Adobe PDF"
wordCom.setProperty("ActivePrinter",new Variant("Adobe PDF"));

//設置printout的參數,將word文檔列印為postscript文檔。目前只使用了前5個參數,如果要使用更多的話可以參考MSDN的office開發相關api
//是否在後台運行
Variant Background=False;
//是否追加列印
Variant Append =False;
//列印所有文檔
int wdPrintAllDocument=0;
Variant Range =new Variant(wdPrintAllDocument);
//輸出的postscript文件的路徑
Variant OutputFileName =new Variant(destinPSFilePath);

//調用word文檔對象的PrintOut方法:將word文檔列印為postscript文檔,簡稱ps文檔
Dispatch.callN((Dispatch)wordDoc, "PrintOut", new Variant[]{Background,Append,Range,OutputFileName}) ;

System.out.println("由word文檔列印為ps文檔成功!");

//調用Distiller對象的FileToPDF方法所用的參數,詳細內容參考Distiller Api手冊
//作為輸入的ps文檔路徑
Variant inputPostScriptFilePath=new Variant(destinPSFilePath);
//作為輸出的pdf文檔的路徑
Variant outputPDFFilePath=new Variant(destinPDFFilePath);
//定義FileToPDF方法要使用adobe pdf設置文件的路徑,在這里沒有賦值表示並不使用pdf配置文件
Variant PDFOption=new Variant("");
//調用FileToPDF方法將ps文檔轉換為pdf文檔
Dispatch.callN(distiller,"FileToPDF",new Variant[]{inputPostScriptFilePath,outputPDFFilePath,PDFOption});
System.out.println("由ps文檔轉換為pdf文檔成功!");

}
catch(Exception ex){
ex.printStackTrace();
}
finally{
closeWord();
}
}

public static void main(String[] argv){
Dispatch_MSWord d=new Dispatch_MSWord();
//d.callWordMacro("E:/eclipse3.1RC3/workspace/jacobPractice/src/com/bjinfotech/practice/jacob/MacroTest.doc","MyWordMacro",new String[]{"這是調用word宏的測試程序"});
//d.callReplaceWord("E:/eclipse3.1RC3/workspace/jacobPractice/src/com/bjinfotech/practice/jacob/MacroTest.doc","$TITLE$","文字已經被替換");
d.docToPDF("c:\\1.doc","c:\\1p.ps","c:\\1p.pdf");
}

}

供你參考啊

B. 跪求《C Primer Plus》(第6版)(中文版) 的高清PDF,是C不是C++,要第六版的不要第五,好人一生多福,謝謝

http://download.csdn.net/detail/d2002a/9787210
http://download.csdn.net/detail/d2002a/9787218
http://download.csdn.net/detail/d2002a/9787228
http://download.csdn.net/detail/d2002a/9787232

C. 如何自己編程序做軟體

萬事開頭難,首先,要有扎實的基礎知識,推薦先學 c語言,搞清楚基本概念,比如 變數,函數,類,數據類型等等,再下點功夫研究下數據結構,前者是所有編程語言的構成基石,後者是演算法,就是如何用編程語言去解決實際問題。不要相信什麼速成教程,不要被當下眾多流行的編程語言搞得不知如何下手,安下心花功夫把基礎打牢。
第二,推薦學習下java語言,建議看看 《java編程思想》這本書,這是本著名的java編程教學書籍,網上有 pdf下載。
第三,熟悉一下關系型資料庫,當前三大主流關系型資料庫 包括 mysql, oracle,sqlserver,你可以挑一個專門學習下,主要學習關系型數據中的 基本概念,比如 表,視圖,存儲過程,函數,以及 關系型資料庫 語言,在網上搜相關書籍學習下就可以了,mysql 安裝較為簡單,而且使用廣泛,免費,跨平台,推薦安裝,以它為藍本學習。
第四,學習下 html ,js,css ,這些是做網頁的基礎,這些你可以 上 菜鳥教程 等網站學習,當然,這些網站教的比較淺,要想深入研究,最好還是找相關書籍好好學一下。
有了這些知識,你可以嘗試做個小系統,比如論壇,圖書管理系統什麼的。 前端頁面 用 html 設計,css美化,js 做數據載入,java 做後台,接收發送數據從(到)前端頁面, 操作資料庫 ,mysql作為資料庫用來存放數據。
然後,你可以研究一些專業性的框架做一些真正的可用的軟體開發了,前端比如,angularjs,vue ,react,後端 如 java spring ,hibernate , 這時候,你要做的就是上官網,看幫助文檔了。
計算機發展的速度是非常快的,新技術層出不窮,但不管怎樣,基礎的東西是不會變的,所以,花時間把基礎打牢,然後多做項目實踐,這樣才能成功。

D. 尋找計算機編程入門的書或電子書

首先可以先選擇自己想學習的語言。如果想速成的簡單的JAVA比較適合你。但是想系統的學習編程的話我推薦你選擇C和C++。
C的話,清華大學出版社的譚浩強出的那本《C語言程序設計》有很多人選用,因為比較基礎,很多大學也是用來當做教科書來用的。
C++的話,基礎的有那本《C++ primer》 那本很有名的,深入點有機械工業出版社的《C++語言設計語言》是C++設計者自己寫的書。
JAVA的話我看的也很雜,沒什麼特別好的推薦給你,不好意思。
其實只要掌握好1門語言,其他的自然而然的就觸類旁通了。
但是如果你真心的想選擇編程的話,語言什麼的都是其次,演算法設計及數據結構才是編程的精華,建議你多看看演算法類的書,《演算法導論》是我推薦的書。

閱讀全文

與c語言編程pdf相關的資料

熱點內容
陝西伺服器託管大帶寬雲空間 瀏覽:274
怎麼整理手機app里的網址 瀏覽:561
程序員必讀書櫃 瀏覽:536
如何舉報非法網站和游戲伺服器 瀏覽:304
安卓怎麼看在哪個地方呆了多久 瀏覽:571
120萬程序員徵婚 瀏覽:247
對稱可搜索加密演算法 瀏覽:649
uc如何免費解壓 瀏覽:652
一本電子書怎麼編譯目錄 瀏覽:256
手機壓縮軟體官方下載 瀏覽:218
如何關閉文件夾左邊的導航 瀏覽:219
鏈路狀態路由演算法的實現 瀏覽:936
遺傳演算法錦標賽選擇 瀏覽:477
我的世界is命令 瀏覽:156
python和php哪個強大 瀏覽:225
批處理啟動文件夾寫文件 瀏覽:85
app怎麼看是第幾層 瀏覽:68
python復雜驗證碼識別 瀏覽:508
python位置變數 瀏覽:437
python和SQLserver 瀏覽:247