1. 程式人生 > >Office 中的 Word 及常用操作

Office 中的 Word 及常用操作

 在所有 Office 應用程式中,Microsoft Word 可能是應用最廣泛的應用程式,它還經常在自定義 Office 解決方案中扮演重要的角色。開發人員用各種不同的方式使用 Word,有一些方式很簡單,而另一些極其複雜。無論涉及何種自定義解決方案,用 Visual Basic for Applications (VBA) 處理 Word 文件的基本方法都是一樣的。在本月的欄目中,我將概括地介紹如何使用 Word,並提供一些關於如何運用Range 物件處理 Word 文件內容的詳細資料。

理解基本方法

在 Word 中,幾乎所有的操作都要呼叫 Document 物件本身或其內容。當您用 VBA 操作 Word 時,Document 物件表示一個開啟的文件,而且所有的Document 物件都是 Application 物件的 Documents 集合的成員。

文件是一個由字元、單詞、句子和段落組成的集合,字元組成單詞,單片語成句子,句子組成段落,等等。因此,每一個 Document 物件都具有CharactersWordsSentencesParagraghs 四個集合。此外,每個文件具有一個包含一個或多個節的 Sections

集合,每一個節都有一個包含該節頁首和頁尾的HeadersFooters 集合。

注意: 您可以在 Microsoft Office 2000 開發人員物件模型指南(英文)中查閱完整的 Word 物件模型。另外,您也可以使用物件瀏覽器和 Microsoft Word Visual Basic 參考幫助來學習有關具體某個物件、屬性、方法和事件的詳細內容。

通過 VBA 使用 Word 時,Document 物件處於中心位置。如果您要開啟文件或建立新文件,就要建立新的 Document 物件。每個開啟或新建立的文件均被新增至 Documents 集合。具有焦點的文件稱為活動文件,由ActiveDocument

屬性表示。

Document 物件作為 Documents 集合中的一個成員,您可以通過使用 Document 物件的索引值(Document 物件在 Documents 集合中的位置,1 是集合中的第一個文件)或名稱來引用它。另外,您也可以使用ActiveDocument 屬性來引用當前具有焦點的文件。例如,如果名為 Policies.doc 的文件是唯一開啟的文件,則以下三個物件變數將全部指向 Policies.doc:

Dim docOne As Word.Document
Dim docTwo As Word.Document
Dim docThree As Word.Document

Set docOne = Documents(1)
Set docTwo = Documents("Policies.doc")
Set docThree = ActiveDocument

一般情況下不要使用 Documents 集合中的索引值來引用文件,因為當其它文件開啟或關閉時,某個特定文件的索引值可能會隨之改變。通常,您可以通過使用ActiveDocument 屬性或使用 Documents 集合的 Add 方法或Open 方法建立的 Document 物件變數。以下示例顯示瞭如何使用 ActiveDocument 屬性把一個地址新增到當前具有焦點的文件中:

With ActiveDocument
   .Envelope.Insert Address:="Office Talk" _
      & vbCrLf & "One Microsoft Way" & vbCrLf _
      & "Redmond, WA 98052", ReturnAddress:= _
      "David Shank" & vbCrLf & _
      "77 First Street" & vbCrLf & _
      "Any Town, USA 12345"
End With

下面的示例說明如何通過使用 Documents 集合的 Open 方法,例項化 Document 物件變數。

Dim docPolicy As Word.Document
Set docPolicy = Documents.Open("c:\my documents\policies.doc")

最後一個示例顯示如何通過使用 Add 方法,為新的空文件建立 Document 物件的例項。

Dim docPolicy As Word.Document
Set docPolicy = Documents.Add

通過使用 Open 方法開啟的文件,或者通過使用 Add 方法建立的文件,都將成為用 ActiveDocument 屬性表示的當前活動文件。如果您想使 Documents 集合裡的其它文件成為活動文件,可使用Document 物件的 Active 方法。

一旦您獲取了要操作的 Document 物件,絕大部分您想通過 VBA 進行的工作將涉及文字的操作。首先要指定文件的一個部分,然後對它進行某些操作。例如,新增或刪除文字,或者設定單詞或字元的格式。您可以使用RangeSelection 這兩個物件來完成很多工作。在本月的專欄中,我將只討論 Range 物件。下個月我們將進一步討論 Selection 物件的具體內容。

理解 Word 的段落標記

當您通過程式處理文字時,必須理解 Word 如何處理段落標記。從根本上來看,Word 文件不過是一個巨大的字元流。人們傾向於認為文件是單詞、句子和段落的集合。但實際上,文件就是一些字元。每個字元都有一定的作用。某些字元是字母、空格或製表符,另一些字元是段落標記或分頁符。

段落標記在 Word 文件中扮演獨特的角色,有時這種角色容易被誤解。段落包含一個段落標記以及所有位於此段落標記和前一個段落標記之間的文字(不包括前一個段落標記)。另外,重要的是,段落標記本包含該段落的所有格式資訊。

當複製單詞、句子和段落時,如果包含段落標記,則所有包含在段落標記中的格式資訊也被複制,並在它們被貼上到其它位置時應用於所屬段落。

如果您想從段落中複製文字並將其貼上到另一個段落中,但不想同時複製段落格式,複製時請不要包括您要複製的文字旁邊的段落標記。

每個空白的 Word 文件僅有一個段落標記,其中同時包含 Character 物件、Word 物件、Sentence 物件和Paragragh 物件各一個。但是,“屬性”對話方塊(“檔案”選單)中的“統計資訊”選項卡將報告空白文件中沒有字元、單詞、句子和段落。這種差異突出顯示了 Word 的一個重要側面,當程式設計操作這些物件時,您需要特別注意這一點。

Range 物件

Range 物件表示文件中的一個連續範圍,由一個起始字元位置和一個終止字元位置定義。這個連續範圍可以小到一個插入點,大到整個文件。它也可能是(而非必須是)由當前節表示的範圍。您也可以定義一個Range 物件,表示和當前節不同的範圍。也可以在同一個文件中定義多個 Range 物件。Range 物件中的字元包含非列印字元,例如,空格、回車符和段落標記。

使用 Range 物件

建立 Range 物件的典型方法為:宣告一個 Range 型別的物件變數,然後用 Document 物件的 Range 方法或另一個物件(例如 CharacterWordSentenceSelection 物件)的 Range 屬性來例項化該變數。例如,以下程式碼建立了兩個 Range 物件,均表示活動文件中的第二個句子。

Dim rngRangeMethod As Word.Range
Dim rngRangeProperty As Word.Range

With ActiveDocument
   If .Sentences.Count >= 2 Then
      Set rngRangeMethod = .Range(.Sentences(2).Start, _
         .Sentences(2).End)
      Set rngRangeProperty = .Sentences(2)
   End If
End With

當您使用 Range 方法來指定文件的特定範圍時,您必須使用此方法的 Start 引數指定這個範圍開始的位置,使用End 引數指定結束的位置。文件的第一個字元的字元位置為 0。最後一個字元的位置和文件的字元總數相等。您可以通過使用Characters 集合的 Count 屬性確定文件中的字元數。如前面的示例所示,您也可以使用BookmarkSelectionRange 物件的StartEnd 屬性來指定 Range方法的 StartEnd 引數。您可以將 StartEnd 引數設定為同一個數字,這將建立一個不包含任何字元的範圍。

您可以使用物件的 SetRange 方法設定或重新定義 Range 物件的內容。您也可以通過使用Range 物件的 Start 屬性或 MoveStart 方法指定或重新定義範圍開始的位置。同樣地,您也可以通過使用Range 物件的 End 屬性或它的 MoveEnd 方法指定或重新定義範圍結束的位置。

以下示例先用 ContentRagne 物件,該物件包含了文件的所有內容。接著,改變 EndSetRange 方法重新定義範圍,使之包含文件的第一個段落。最後,使用MoveEnd 方法將範圍的結束位置擴充套件至文件的第二個段落末尾。此示例中的每一步都將當前範圍中包含的字元的數量列印到“立即視窗”。

Sub RangeExample()
   Dim rngSample As Range

   Set rngSample = ActiveDocument.Content

   With rngSample
      Debug.Print "範圍現在包含 " & .Characters.Count _
         & " 個字元。"
      .End = ActiveDocument.Sentences(1).End
      Debug.Print "範圍現在包含 " & .Characters.Count _
         & " 個字元。"
      .SetRange Start:=0, End:=ActiveDocument._
         Paragraphs(1).Range.End
      Debug.Print "範圍現在包含 " & .Characters.Count _
         & " 個字元。"
      .MoveEnd Unit:=wdParagraph, Count:=1
      Debug.Print "範圍現在包含 " & .Characters.Count _
         & " 個字元。"
   End With
End Sub

您也可以通過使用物件的 Find 屬性返回 Find 物件,重新定義 Range 物件。以下示例演示用Find 屬性在活動文件中確定文字的位置。如果找到了文字,Range 物件將自動重新定義以包含符合搜尋條件的文字。

With rngRangeText.Find
   .ClearFormatting
   If .Execute(FindText:="Find Me!") Then
      ' rngRangeText 被重新定義。
   End If
End With

許多 Word 物件具有可返回 Range 物件的 Range 屬性。在您需要使用 Range 物件的屬性和方法進行操作,而物件本身又不提供這些屬性和方法的情況下,您可以使用物件的 Range 屬性返回Range 物件。例如,以下程式碼使用 Paragragh 物件的 Range 屬性返回Range 物件,從而設定文件第一個段落中文字的格式:

Dim rngPara As Range

Set rngPara = ActiveDocument.Paragraphs(1).Range
With rngPara
   .Bold = True
   .ParagraphFormat.Alignment = wdAlignParagraphCenter
   .Font.Name = "Arial"
End With

定義 Range 物件後,您可以應用此物件的方法和屬性修改所指定範圍的內容或獲取有關資訊。例如,您可以使用 Range 物件的 StoryType 屬性來確定 Range 在文件中的位置。

處理 Range 物件中的文字

可以使用 Range 物件的 Text 屬性來指定或確定該範圍包含的文字。例如,以下程式碼首先顯示了Range 物件中的文字,然後更改文字並顯示新文字,最後還原為原始文字。此示例說明了如何使用 Range 物件的Range 屬性將文字複製和貼上到文件中並同時保持原段落結構不變。請注意在 strNewText 變數中包含段落標記 (vbCrLf) 的新文字如何替換在選定原段落時包含的段落標記。

Public Sub ChangeTextSample()
   Dim rngText As Range
   Dim strOriginalText As String
   Dim strNewText As String

   strNewText = "This text is replacing the original" _
      & " text in the first paragraph of the active" _
      & " document. This is all done using only the" _
      & " Text property of the Range object!" & vbCrLf

   Set rngText = ActiveDocument.Paragraphs(1).Range
   With rngText
      MsgBox .Text, vbOKOnly, "This is the original text."
      strOriginalText = .Text
      .Text = strNewText
      MsgBox .Text, vbOKOnly, "This is the new text" _
         & " inserted in paragraph 1."
      .Text = strOriginalText
      MsgBox "The original text is restored."
   End With
End Sub

您可以使用 Range 物件的 StoryType 屬性確定範圍在文件中的位置。文件構成部分是指文件中包含文字的特定範圍。在一個文件中最多可以有 11 種文件構成部分,表示正文、頁首、頁尾、批註等不同範圍。您可以使用StoryRanges 屬性返回 StoryRanges 集合。StoryRanges 集合包含Range 物件,表示文件中的每一個文件構成部分。

新 Word 文件只包含一個文件構成部分,稱為“Main Text”,表示文件主體部分的文字。即使一個空白文件也包含字元、單詞、句子和段落各一個。

您不需要專門將新文件構成部分新增至文件。當您把文字新增至文件的某個部分(11 種文件構成部分之一)時,Word 會自動新增它們。例如,如果您要新增頁尾,Word 將新增 Footnotes 文件構成部分。如果您要新增批註,Word 將把 Comments 文件構成部分新增到文件的StoryRanges 集合中。

您可以使用 Range 屬性返回 Range 物件來表示文件中的每一個文件構成部分。例如,以下程式碼列印與 Main Text 和 Comments 文件構成部分相關的文字:

Dim rngMainText As Word.Range
Dim rngCommentsText As Word.Range

Set rngMainText = ActiveDocument.StoryRanges(wdMainTextStory)
Set rngComments = ActiveDocument.StoryRanges(wdCommentsStory)
Debug.Print rngMainText.Text
Debug.Print rngComments.Text

使用 Range 物件的 InsertBeforeInsertAfter 方法,可將文字新增至現有Range 物件。事實上,有一整類方法,名稱以“Insert”開頭,可以用於操作 Range 物件。

如果有一個過程,能夠把 Range 物件的 InsertBefore InsertAfter 方法與 Text 屬性結合,那麼它將非常有用。在程式設計處理文字時,就可以使用這個過程在同一個地方處理大量工作。以下所示的 InsertTextInRange 正是這樣一個過程。無論何時您需要將文字新增到Range 物件,都可以呼叫 InsertTextInRange 過程。換句話說,無論何時您需要在 Word 文件中程式設計更改現有的文字,這一過程都將非常有用。

InsertTextInRange 過程使用兩個必要的變數和一個可選的變數。strNewText 變數包含您想要新增至Range 物件的文字,此物件在 rngRange 變數中指定。intInsertMode 可選變數指定將新文字新增至範圍的方式。變數的值是三個自定義列舉常數中的一個,指定是否使用InsertBefore 方法、InsertAfter 方法或 Text 屬性替換現有的範圍文字。

Public Enum opgTextInsertMode
    Before
    After
    Replace
End Enum

Function InsertTextInRange(strNewText As String, _
         Optional rngRange As Word.Range, _
         Optional intInsertMode As opgTextInsertMode = _
         Replace) As Boolean
   ' 此過程將 strNewText 引數指定文字插入
   ' rngRange 指定的 Range 物件中。它呼叫
   ' IsLastCharParagraph 過程從 rngRange 
   ' 物件清除後續的段落標記。
 
   Call IsLastCharParagraph(rngRange, True)

   With rngRange
      Select Case intInsertMode
         Case 0 ' 在範圍之前插入文字。
            .InsertBefore strNewText
         Case 1 ' 在範圍之後插入文字。
            .InsertAfter strNewText
         Case 2 ' 替換範圍中的文字。
            .Text = strNewText
         Case Else
      End Select
      InsertTextInRange = True
   End With
End Function

請注意,在範圍中插入文字之前,使用了 IsLastCharParagraph 過程來刪除最後一個段落的段落標記。以下示例使用 Chr$() 函式,以字元程式碼 13 表示段落標記。

Function IsLastCharParagraph(ByRef rngTextRange As Word.Range, _
         Optional blnTrimParaMark As Boolean = False) As Boolean
   ' 本過程接受字元、單詞、句子或段落 Range 
   ' 作為第一個引數。如果範圍中的最後一個字元
   ' 是段落標記,則返回 True;否則返回 False。
   ' 本過程還接受一個 Boolean 引數,用於指定
   ' 當文字最後存在段落標記時,是否將其刪除。
   ' 當 blnTrimParaMark 引數為 True 時,本過
   ' 程呼叫本身來刪除所有後續的段落標記。

   Dim strLastChar As String

   strLastChar = Right$(rngTextRange.Text, 1)
   If InStr(strLastChar, Chr$(13)) = 0 Then
      IsLastCharParagraph = False
      Exit Function
   Else
      IsLastCharParagraph = True
      If Not blnTrimParaMark = True Then
         Exit Function
      Else
         Do
            rngTextRange.SetRange rngTextRange.Start, _
               rngTextRange.Start + _
               rngTextRange.Characters.Count - 1
            Call IsLastCharParagraph(rngTextRange, True)
        Loop While InStr(rngTextRange.Text, Chr$(13)) <> 0
      End If
   End If
End Function

在此示例中,使用了 Range 物件的 Characters 集合的 Count 屬性來重新定義Range 物件的終點。

有關處理段落的更多資訊

在前面討論過的 ChangeTextSample 過程中,請注意 strNewText 變數中的文字如何使用 vbCrLf 內建常量在文字的結束處建立段落標記,從而替換活動文件的第 1 段中的現有文字。這樣做是為了避免新文件成為第二個段落的一部分。

當您建立表示 CharacterWordSentence 物件的 Range 物件,並且該物件位於段落的結束位置時,段落標記自動包含在範圍之內。而且,Range 物件將包含後續的空段落標記。例如,在一個由兩個段落組成的文件中,假設其中第一個段落包含三個句子,而第二個段落為空,那麼以下程式碼建立的Range 物件表示第一段中的最後一個句子:

Set rngCurrentSentence = ActiveDocument.Sentences(3)

因為 rngCurrentSentence Range 物件引用第一個段落的最後一個句子,該段的段落標記(和所有後續的空段落標記)將被自動包含在範圍中。如果您接著將此物件中的Text 屬性應用到一個沒有使用段落標記結束的文字字串,那麼文件中的第二段將被刪除。

當您編寫在 Word 文件中操作文字的 VBA 程式碼時,您需要自行處理文字中出現的段落標記。當您在 Range 物件中剪下或貼上文字時,您可以使用兩種基本方法來處理段落標記:

  • 在要插入文件的文字中,包含一個新的段落標記(用 vbCrLf 常量表示),如 ChangeTextSample 過程所示。

  • 將最後的段落標記從 Range 物件中排除,如在 InsertTextInRange 過程中 IsLastCharParagraph函式的應用所示。

namespace ImportExportToOffice
{
    
using System;
    
using System.ComponentModel;
    
using System.Data;
    
using System.Windows.Forms;
    
publicclass ImportExportToWord
    
{
        
private Word.ApplicationClass oWordApplic;    
        
private Word.Document oDoc;        
        
privateconststring strFileName    =@"F:\";
        
privateconststring PostfixForWord    =@".doc";
        
privateconststring PostfixForHtml    =@".Html";

        
建構函式#region 建構函式
        
public ImportExportToWord()
        
{
            oWordApplic 
=new Word.ApplicationClass();
        }

        
#endregion


        
public Word.Document Document
        
{
            
get
            
{
                
returnthis.oDoc;
            }

        }


        
public Word.ApplicationClass Application
        
{
            
get
            
{
                
returnthis.oWordApplic;
            }
    
        }
 

        
私有方法#region 私有方法

        
/**////<summary>
        
/// 設定Word文件是否可視
        
///</summary>
        
///<param name="InEnabled">boolean</param>

privatevoid SetVisible( Boolean InEnabled )
        
{
            oWordApplic.Visible 
= InEnabled;
        }


        
/**////<summary>
        
/// 在垃圾回收時,在工作管理員中還存在當前操作的WORD的程序
        
/// 查閱資料,必須在另一個方法中在呼叫GC才可以真正的清楚掉,當前的程序
        
///</summary>

privatevoid GCForQuit()
        
{
            
object missing = System.Reflection.Missing.Value;
            oWordApplic.Application.Quit( 
ref missing, ref missing, ref missing );    
            
if ( oDoc !=null )
            
{
                System.Runtime.InteropServices.Marshal.ReleaseComObject(oDoc);
                oDoc 
=null;
            }

            
if ( oWordApplic !=null )
            
{
                System.Runtime.InteropServices.Marshal.ReleaseComObject(oWordApplic);
                oWordApplic 
=null;
            }

            GC.Collect();
        }

        
/**////<summary>
        
/// 返回儲存檔案的FileName
        
///</summary>
        
///<param name="strDefaultExt">要儲存檔案的型別</param>
        
///<param name="strFilter">檔名篩選器字串</param>
        
///<returns>儲存的路徑</returns>

privatestring SaveFileName( string strDefaultExt, string strFilter )
        
{
            
string fileName ="";
            System.Windows.Forms.SaveFileDialog saveFileDlg 
=new System.Windows.Forms.SaveFileDialog(); 
            saveFileDlg.DefaultExt    
= strDefaultExt;
            saveFileDlg.Filter        
= strFilter;
            
if ( saveFileDlg.ShowDialog() == System.Windows.Forms.DialogResult.OK ) 
                fileName 
= saveFileDlg.FileName;
            
return fileName;
        }


        
/**////<summary>
        
/// 將被 SaveFileName 取代
        
///</summary>
        
///<returns></returns>

privatestring SaveFileToHtmlForName()
        
{
            
string fileName ="";
            System.Windows.Forms.SaveFileDialog saveFileDlg 
=new System.Windows.Forms.SaveFileDialog(); 
            saveFileDlg.DefaultExt    
="Html";
            saveFileDlg.Filter        
="html檔案 (*.html)|*.htm";
            
if ( saveFileDlg.ShowDialog() == System.Windows.Forms.DialogResult.OK ) 
                fileName 
= saveFileDlg.FileName;
            
return fileName;
        }
    

        
/**////<summary>
        
/// 儲存
        
///</summary>

privatevoid Save( )
        
{
            oDoc.Save();            
        }
        

        
#endregion


        
公有方法#region 公有方法

        
/**////<summary>
        
/// 開啟一個空的Word模板
        
///</summary>

publicbool Open( )
        
{
            
bool result =false;
            
try

相關推薦

Office Word 常用操作

 在所有 Office 應用程式中,Microsoft Word 可能是應用最廣泛的應用程式,它還經常在自定義 Office 解決方案中扮演重要的角色。開發人員用各種不同的方式使用 Word,有一些方式很簡單,而另一些極其複雜。無論涉及何種自定義解決方案,用 Vis

五、mysqlsql語句分類常用操作

所表 desc 直接 常用操作 文件 ble div alter .cn 1.sql語句分類: DQL語句  數據查詢語言  select DML語句  數據操作語言  insert delete update DDL語句  數據定義語言  create drop

.net連線MYSQL資料庫常用操作

需要有一個工具類:using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Text; using System.Data; using

python:pandas模組的DataFrame結構常用操作

轉載:http://blog.csdn.net/u014607457/article/details/51290582 1. 介紹 DataFrame unifies two or more Series into a single data structure.Ea

python字典的常用操作命令注意事項

1.1 使用update()合併字典 使用update()可以將一個字典的鍵值對賦值到另一個字典中。如果待新增的字典於待擴充的字典包含同樣的鍵值的話,新歸入的字典的值會覆蓋原有的值。 1.2 使用d

內置數據結構 :列表常用操作

xtend 也會 count insert 返回 所在 .so 數據 start 列表是一個序列:用於順序的存儲數據, 通常在定義的時候,使用中括號,在轉化可叠代對象為列表時用list 函數 1,訪問列表元素: List[0] 通過下標訪問

Linux系統MySQL的常用操作命令

char OS var 權限 記錄 port nis whereis null 服務: # chkconfig --list 列出所有系統服務# chkconfig --list | grep on 列出所有啟動的系統服務 # chkconfig -

MongoDB的安裝常用操作

log -o path 存儲引擎 wire ip地址 進程管理 網絡 不存在 MongoDB MongoDB簡介 MongoDB是一款跨平臺面向文檔的數據庫。可以實現高性能、高可用性,並且能夠輕松擴展。是一個基於分布式文件存儲的開源數據系統,在高負載的情況下,添加更多的節

Python元組類型、字典類型常用操作

定義 values 描述 返回 ict 不可 tro 字典類 tuple 一、元組類型 1.用途   記錄多個值,當多個值沒有改的需求,此時用元組更合適,Python的元組與列表類似,不同之處在於元組的元素不能修改。 2.定義方式   在()內用逗號分隔開多個任意類型的值 

1 數據結構(13)_二叉樹的概念常用操作實現

做什麽 != 後繼 switch 繼承 mem bad 葉子 static 1. 樹到二叉樹的轉換 思考:通用樹結構的實現太過復雜(樹中每個結點都可以有任意多的孩子,具有多種形態),工程中很少會用到如此復雜的樹是否可以簡化呢?思路:減少樹結點中孩子的數量。但這樣樹是否還能通

mysql編譯安裝常用操作

1.3 安裝相關包 1.3.1 cmake軟體 cd /home/oldboy/tools/ tar xf cmake-2.8.8.tar.gz cd cmake-2.8.8 ./configure #CMake has bootstrapped.  Now run gmake. gmak

Git介紹常用操作演示(一)--技術流ken

Git介紹及常用操作演示(一)--技術流ken   Git介紹    Git(讀音為/gɪt/。)是一個開源的分散式版本控制系統,可以有效、高速的處理從很小到非常大的專案版本管理。 Git 是 Linus Torvalds 為了幫助管理 Linux 核心

【資料結構與演算法】之樹的基本概念常用操作的Java實現(二叉樹為例) --- 第十二篇

樹是一種非線性資料結構,這種資料結構要比線性資料結構複雜的多,因此分為三篇部落格進行講解: 第一篇:樹的基本概念及常用操作的Java實現(二叉樹為例) 第二篇:二叉查詢樹 第三篇:紅黑樹 本文目錄: 1、基本概念 1.1  什麼是樹 1.2  樹的

Docker介紹常用操作演示--技術流ken

scrip imp rest comment 建議 tar ani 資源 端口 Docker簡介 Docker 是一個開源的應用容器引擎,讓開發者可以打包他們的應用以及依賴包到一個可移植的容器中,然後發布到任何流行的Linux機器上,也可以實現虛擬化。容器是完

geth搭建以太坊私鏈常用操作

一、下載安裝geth客戶端 https://www.ethereum.org/ 二、搭建私有鏈 1、準備創世區塊配置檔案 要執行私有鏈,我們就需要定義自己的創世區塊,創世區塊資訊寫在一個json格式的配置檔案中。首先將下面的內容儲存到一個json檔案中,例如genesis.json。 {

python字串(str)常用操作總結

# 字串的常用操作方法 (都是形成新的字串,與原字串沒有關係。) 1、字串的基本操作之切片 s = 'python hello word' # 取首不取尾,取尾要+1 # 切片取出來的字串與原字串無關 print(s[6: 10]) print(s[7:: 2]) # 反向取數字需要加上反向步長

C# 系統應用之窗體最小化至工作列常用操作

一.介面操作 1.建立"Windows窗體應用程式"專案,從"工具箱"中新增NotifyIcon(執行時期間在Windows工作列右側的通知區域顯示圖示).滑鼠右擊notifyIcon1屬性,為控制元件屬性Icon新增圖示,Text屬性為"CSDN". 2

JavaHashMap的常用操作

前期準備:首先給hashMap裡面put一些鍵值對,程式碼如下: HashMap<Integer, Integer> hashMap = new HashMap<>(); hashMap.put(5, 2); hashMap.put(

MARIADB安裝、初始化常用操作

1.Linux下安裝與初始化#安裝   yum install mariadb-server#設定編碼 vim /etc/my.cnf[mysqld]character-set-server=utf8  #啟動   systemctl start mariadb#自啟動  s

Linux系統vim的常用操作

######### vim ########## 1.##vim模式## *)命令模式 用vim開啟一個檔案就進入這個模式了(這是vim預設的模式),在這個模式中可以輸入相關命令 *)插入模式 進入vim中按小寫的i鍵進入vim的插入模式 *)退出模式 按Esc鍵按