Xem Nhiều 1/2023 #️ Các Thao Tác Cơ Bản Sử Dụng Windows Explorer # Top 2 Trend | Bothankankanhatban.com

Xem Nhiều 1/2023 # Các Thao Tác Cơ Bản Sử Dụng Windows Explorer # Top 2 Trend

Cập nhật thông tin chi tiết về Các Thao Tác Cơ Bản Sử Dụng Windows Explorer mới nhất trên website Bothankankanhatban.com. Hy vọng nội dung bài viết sẽ đáp ứng được nhu cầu của bạn, chúng tôi sẽ thường xuyên cập nhật mới nội dung để bạn nhận được thông tin nhanh chóng và chính xác nhất.

1. Khởi động Windows Explorer. C3. Nháy chuột phải vào biểu tượng My Computer sau đó chọn Explorer. C4. Ấn tổ hợp phím WINDOW () + E trên bàn phím máy tính. Cửa sổ chương trình Windows Explorer xuất hiện – Khung trái chứa tên các ổ đĩa và các thư mục:

C1. VàoC2. Nháy chuột phải vào nútđể mởC3. Nháy chuột phải vào biểu tượngsau đó chọnC4. Ấn tổ hợp phímtrên bàn phím máy tính.Cửa sổ chương trìnhxuất hiện- Khung trái chứa tên các ổ đĩa và các thư mục:

HĐH Windows XP gán ký tự A, B cho các ổ đĩa mềm, ký tự C, D,…cho các loại ổ đĩa logic khác. Ví dụ: (A:), (B:), (C:), (D:),…

– Khung phải hiển thị nội dung của mục được chọn trên khung trái:

Nháy chuột chọn ổ đĩa bên khung trái để hiện nội dung của thư mục gốc bên khung phải.

Nháy chuột vào tên thư mục bên khung trái để hiện nội dung của thư mục đó bên khung phải.

– Thay đổi hình thức hiển thị trên khung phải: Người sử dụng chọn View và chọn một trong 5 hình thức hiển thị: 

Thumbnails: Thường dùng để xem trước file hình.

Tiles: Hiện các tệp tin và các thư mục con ở dạng biểu tượng lớn.

Icons: Hiện các tệp tin và các thư mục con ở dạng biểu tượng nhỏ.

List:  Hiện các tệp tin và các thư mục con ở dạng liệt kê danh sách.

Details: Liệt kê chi tiết các thông tin như tên (Name), kiểu (Type), kích thước lưu trữ (Size), ngày giờ tạo hay sửa (Modified).

: Liệt kê chi tiết các thông tin như tên (), kiểu (), kích thước lưu trữ (), ngày giờ tạo hay sửa ().

Folders trên thanh công cụ chuẩn.  – Sắp xếp dữ liệu bên khung phải: Người sử dụng vào View Arrange Icons by và chọn thứ tự sắp xếp. Theo tên: Name, theo kích thước: Size, theo phần mở rộng: Type, theo ngày tháng tạo sửa: Modified

– Hiện, ẩn cây thư mục bên khung trái: Người sử dụng nháy chuột trái chọn hay bỏ chọn núttrên thanh công cụ chuẩn.- Sắp xếp dữ liệu bên khung phải: Người sử dụng vàovà chọn thứ tự sắp xếp. Theo tên:, theo kích thước:, theo phần mở rộng:, theo ngày tháng tạo sửa:

2.  Các thao tác với thư mục và tệp tin.

2.1. Tạo thư mục, tệp tin. – Tạo thư mục: – Tạo tệp tin: √ Lưu ý: Tên thư mục, tệp tin nên đặt dễ nhớ, có thể theo chuyên mục, thời gian, không nên gõ có dấu để thuận lợi cho việc quản lý thư mục, tệp tin.  2.2. Tạo biểu tượng đường dẫn tắt (shortcut). Shortcut là một file liên kết đến một đối tượng trên máy tính hay trên mạng. Đối tượng đó có thể là tập tin, thư mục, ổ đĩa, máy in, vv…Shortcut là cách nhanh nhất để khởi động một chương trình được sử dụng thường xuyên hoặc để mở tập tin, thư mục mà không cần phải tìm đến nơi lưu trữ chúng. – Tạo shortcut cho thư mục:

– Tạo thư mục:C1. Nháy chuột phải vào nơi cần tạo thư mục sau đó chọnC2. Vàohoặc chọnbên khung trái. Một thư mục mới xuất hiện với tên mặc định là, gõ tên thư mục mới (nếu muốn) và ấn phím- Tạo tệp tin:Tên thư mục, tệp tin nên đặt dễ nhớ, có thể theo chuyên mục, thời gian, không nên gõ có dấu để thuận lợi cho việc quản lý thư mục, tệp tin.là mộtliên kết đến một đối tượng trên máy tính hay trên mạng. Đối tượng đó có thể là tập tin, thư mục, ổ đĩa, máy in, vv…là cách nhanh nhất để khởi động một chương trình được sử dụng thường xuyên hoặc để mở tập tin, thư mục mà không cần phải tìm đến nơi lưu trữ chúng.- Tạocho thư mục:

shortcut sau đó chọn Create Shortcut nếu muốn tạo shortcut ngay trong thư mục đang mở.

C1. Nháy chuột phải vào thư mục muốn tạosau đó chọnnếu muốn tạongay trong thư mục đang mở.

C2. Nháy chuột phải vào thư mục muốn tạo shortcut sau đó chọn Send to Desktop (create shortcut) nếu muốn tạo shortcut trên nền Desktop.

– Tạo shortcut cho tệp tin: 2.3. Chọn thư mục, tệp tin. Nếu muốn chọn thư mục, tệp tin thì người sử dụng nháy chuột trái vào thư mục, tệp tin cần chọn. Nếu muốn chọn nhiều thư mục, tệp tin đứng cách quãng nhau thì người sử dụng giữ phím Ctrl trong lúc nháy chuột trái để chọn thư mục, tệp tin. Còn nếu muốn chọn nhiều thư mục, tệp tin đứng cạnh nhau thì người sử dụng giữ phím Shift trong lúc chọn thư mục, tệp tin. 2.4.. Mở thư mục, tệp tin. – Thư mục:

C1. Nháy đúp chuột trái vào thư mục cần mở.

C2. Nháy chuột phải vào thư mục cần mở chọn Open.

C3. Nháy chuột trái vào thư mục cần mở sau đó ấn phím Enter.

– Tệp tin

C1. Nháy đúp chuột trái vào tệp tin cần mở.

C2. Nháy chuột phải vào tệp tin cần mở sau đó chọn Open nếu đã đăng ký định dạng của tệp tin với hệ điều hành hoặc chọn Open With để mở theo sự lựa chọn chương trình.

C3. Nháy chuột trái vào tệp tin cần mở sau đó ấn phím Enter.

2.5. Đổi tên thư mục, tệp tin. – Thư mục:

C1. Nháy chuột phải vào thư mục cần đổi tên sau đó chọn Rename, người sử dụng gõ tên mới vào thư mục sau đó ấn phím Enter.

C2. Nháy chuột trái vào thư mục muốn đổi tên sau đó ấn phím F2 trên bàn phím, người sử dụng gõ tên mới vào thư mục rồi ấn phím Enter.

2.6. Di chuyển thư mục, tệp tin. – Nháy chuột trái vào thư mục, tệp tin muốn di chuyển. Vào Edit Move To Folder…hoặc chọn Move this file hoặc Move this folder bên khung trái.

C1. Nháy chuột phải vào thư mục, tệp tin cần sao chép sau đó chọn Copy, di chuyển đến nơi cần để thư mục, tệp tin đã sao chép, nháy chuột phải chọn Paste.

C2. Nháy chuột trái vào thư mục, tệp tin cần sao chép, người sử dụng ấn tổ hợp phím Ctrl + C trên bàn phím, di chuyển đến nơi cần để thư mục, tệp tin đã sao chép, ấn tổ hợp phím Ctrl +V để tiến hành sao chép.

C3. Vào Edit Copy To Folder…hay chọn Copy this file hoặc Copy this folder.

2.8. Chia sẻ thư mục. B1. Nháy chuột trái vào My Computer. B2. Vào Tools Folder Options…  – Cửa sổ Enable File Sharing xuất hiện, chọn Just enable file sharing OK. – Trong hộp thoại mới xuất hiện, nháy chuột trái chọn Share this folder on the network, sau đó bấm OK để hoàn tất việc chia sẻ thư mục trên mạng nội bộ.

Người sử dụng không thể chia sẻ thư mục qua mạng nếu đăng nhập bằng tài khoản Guest (là tài khoản dùng chung do hệ điều hành tạo sẵn nhằm cho phép bất kỳ người sử dụng nào cũng có thể truy cập và sử dụng máy tính).

Người sử dụng không thể chia sẻ các thư mục Desktop, Favorites và My Documents (nằm trong thư mục C:Documents and Settings{Tên tài khoản}).

Khi chia sẻ dữ liệu trong mạng nội bộ, dữ liệu được chia sẻ có thể bị thay đổi (sửa, xóa,…) bởi những người dùng khác nếu người sử dụng lựa chọn Allow network users to change my files.

2.9. Xóa thư mục, tệp tin. B1. Nháy chuột trái vào thư mục, tệp tin cần xóa.

Yes để thực hiện hoặc chọn No nếu không muốn xóa. √ Lưu ý: Để xóa hẳn thư mục, tệp tin mà không muốn lưu trữ trên thùng rác, người sử dụng giữ phím Shift trong khi xóa. Có thể phục hồi lại ngay sau khi xóa thư mục, tệp tin bằng cách nháy chuột phải vào vùng trống bên khung phải và chọn mục Undo Delete (Ctrl + Z). 2.10. Phục hồi thư mục, tệp tin – Khi xóa thư mục, tệp tin trong ổ đĩa cứng, Hệ điều hành sẽ di chuyển thư mục, tệp tin đã xóa vào Recycle Bin. Người sử dụng có thể mở thư mục này để phục hồi lại hoặc xóa hẳn khỏi đĩa cứng. Để phục hồi lại thư mục, tệp tin vừa xóa, nháy chuột trái vào thư mục, tệp tin muốn phục hồi sau đó chọn Restore this item trên mục Recycle Bin Tasks hoặc nháy chuột phải vào thư mục, tệp tin cần phục hồi sau đó chọn Restore. Thư mục, tệp tin được phục hồi sẽ trở lại đúng vị trí ban đầu trước khi xóa. 2.11. Các thao tác khác. 2.11.1. Xem thông tin thư mục, tệp tin. Để xem thông tin (thuộc tính) của thư mục, tệp tin, người sử dụng nháy chuột phải vào thư mục, tệp tin cần xem thông tin sau đó chọn Properties. 2.11.2. Tìm kiếm (Search) thư mục, tệp tin. – Dữ liệu trên ổ đĩa cứng ngày một nhiều lên, để nhanh chóng tìm ra dữ liệu cần tìm, HĐH Windows XP hỗ trợ công cụ tìm kiếm giúp người sử dụng thực hiện được điều đó.

B1. Nháy chuột trái vào nút Search trên thanh công cụ.

B2. Sau khi chọn xuất hiện hộp thoại:

B3. Nháy chuột trái chọn mục All files and folders để tìm tất cả.

Nếu muốn tìm theo tên thư mục, tệp tin, gõ vào đầy đủ hay một phần của tên thư mục, tệp tin đó trong hộp All or part of file name.

Nếu muốn tìm trong nội dung thư mục, tệp tin gõ vào một từ hay một cụm từ đại diện cần tìm trong hộp A word or phrase in the file.

Có thể chỉ ra nơi cần tìm bằng cách nháy chuột trái vào mũi tên hướng xuống trong hộp Look in, sau đó chọn ổ đĩa hay thư mục. 

Nháy chuột trái vào nút Search để thực hiện việc tìm kiếm. Kết quả tìm kiếm sẽ hiện bên khung phải. Nếu có nhiều thư mục, tệp tin được tìm thấy, có thể sử dụng những điều kiện bổ sung để lọc ra những tập tin cần thiết.

  

 

10.0 File Và Các Thao Tác Cơ Bản Với File Trong C

Chào các bạn đang theo dõi khóa học lập trình trực tuyến ngôn ngữ C++.

Trong bài học này, chúng ta sẽ cùng tìm hiểu về các khái niệm về File và cách để thao tác với File trong ngôn ngữ lập trình C/C++.

File

Nếu máy tính của các bạn có ổ cứng, hoặc các bạn có USB hoặc bất kỳ thiết bị lưu trữ nào thì chắc chắn các bạn đã từng làm việc với File. Khi các bạn chơi một game offline, thông tin nhân vật, điểm số, … sẽ được lưu trữ trong File để khi chương trình game bị tắt đi thì các bạn không phải chơi lại từ đầu. Khi các bạn cài đặt cấu hình cho một phần mềm và tắt đi, cấu hình đó được lưu vào File để lần làm việc tiếp theo sẽ sử dụng. Hay khi các bạn biên dịch một chương trình C++ trên Visual Studio 2015, C++ Compiler của Visual studio sẽ đọc mã nguồn các bạn đã viết trong các file *.cpp để kiểm tra lỗi và dịch chúng sang file *.obj. Ngay cả hệ điều hành Windows mà các bạn đang sử dụng cũng là tập hợp của rất nhiều file được lưu trữ bên trong phân vùng ổ đĩa dùng cho Hệ điều hành…

Đó là một vài ví dụ cho thấy sự tồn tại của File trong máy tính. Vậy thì chúng ta đã thao tác với những File đó như thế nào?

Làm việc với File chúng ta chỉ có các thao tác cơ bản như: tạo file mới, đọc dữ liệu trong file, ghi dữ liệu vào file, xóa file… Và chúng ta làm điều đó hằng ngày, khi chúng ta chơi game, khi xem phim trên máy tính, … và ngay cả khi chúng ta lập trình, mã nguồn của chúng ta được lưu xuống File mã nguồn khi nhấn tổ hợp phím Ctrl + S.

Theo định nghĩa trên Wikipedia về computer file: Một file trên máy tính là một tài nguyên dùng để lưu trữ thông tin lâu dài, sử dụng cho các chương trình máy tính.

Cũng giống như việc lưu trữ dữ liệu tạm thời trên RAM, file cũng lưu trữ dữ liệu dưới dạng nhị phân (0 hoặc 1), tuy nhiên tùy vào định dạng của file và cách chuyển đổi của mỗi phần mềm đọc file mà chúng ta có những kiểu thông tin khác nhau. Ví dụ file .png thì được chuyển về dạng hình ảnh, phần mềm Microsoft Word chuyển dãy bit nhị phân về dạng text…

Trong ngôn ngữ lập trình C/C++: File là kiểu đối tượng, nó xác định một stream và chứa các thông tin cần thiết để điều khiển, bao gồm một con trỏ trỏ đến buffer của nó, các chỉ mục và trạng thái của nó.

Các bạn có thể hiểu File (trong ngôn ngữ lập trình C/C++) là một kiểu đối tượng mà thông qua nó chúng ta có thể thao tác với dữ liệu được lưu trữ bên trong File (chứ không phải là một File trên máy tính).

Để các bạn không bị nhầm lẫn, mình đang nói về kiểu dữ liệu FILE được định nghĩa trong thư viện cstdio (hay stdio.h) mà có thể các bạn đã từng học trong ngôn ngữ C. Chúng ta sẽ học cách sử dụng các Stream để thao tác với file thay vì sử dụng kiểu dữ liệu FILE trong các bài học sau, nhưng mình nghĩ kiểu dữ liệu FILE trong thư viện cstdio cũng có những ưu điểm riêng của nó nên mình không bỏ qua bài học này.

Làm việc với FILE type trong C/C++

Trong bài học này, mình sẽ hướng dẫn các bạn thực hiện các thao tác như mở file, đọc và ghi dữ liệu trong file… Chúng ta cần làm việc trên một file cụ thể nào đó nên mình sẽ tạo một file với tên file là my_document.txt trong thư mục Desktop có đường dẫn trên máy mình là: C:/Users/ADMIN/Desktop/my_document.txt

Để làm việc với file, chúng ta cần biết vị trí của file (thông qua đường dẫn) để con trỏ kiểu FILE có thể tạo được luồng dữ liệu giữa người dùng và file trên thiết bị lưu trữ.

int

main

()

{

const

char

*filePath =

"C:/Users/ADMIN/Desktop/my_document.txt"

; FILE *file;

return

0

; }

Open file

Để mở một file, các bạn có thể sử dụng hàm fopen được định nghĩa trong thư viện cstdio:

FILE

* fopen(

const

char

*

file

,

const

char

*mode);

Nếu mở file thành công, một địa chỉ của một đối tượng kiểu FILE sẽ được trả về. Nếu mở file thất bại thì trả về NULL.

const

char

*filePath =

"C:/Users/ADMIN/Desktop/my_document.txt"

; FILE *file; file = fopen(filePath,

"r"

);

if

(!file)

std

::

cout

<<

"Can not open this file"

<<

std

::

endl

;

else

std

::

cout

<<

"File is opened"

<<

std

::

endl

;

Trong đoạn chương trình trên, mình mở file đã tạo sẵn trong thư mục Desktop với mode “r” (chỉ dùng để đọc dữ liệu).

Các bạn cần lưu ý rằng file trong máy tính tồn tại ở 2 dạng: file văn bản và file bị mã hóa.

File văn bản là những file mà các bạn có thể đọc được khi mở bằng các trình soạn thảo văn bản, thông thường những file này được định dạng Unicode (hoặc những định dạng dùng cho văn bản khác).

File bị mã hóa (thường gọi là file nhị phân) không thể đọc được khi mở file bằng các trình soạn thảo văn bản. Sử dụng File bị mã hóa giúp chúng ta bảo mật dữ liệu tốt hơn File văn bản.

Các mode mà mình đã liệt kê ở bảng trên chỉ dùng để thao tác với file văn bản. Khi thao tác với file bị mã hóa (file nhị phân), các bạn cần nối thêm kí tự b (binary) vào ngay sau mode mà các bạn chọn. Ví dụ: “rb”, “wb”, “ab”, “rb+”, “r+b”, …

Close file

Sau khi thao tác với file xong, các bạn cần đóng file lại để tránh những lỗi phát sinh ngoài ý muốn. Để đóng file, chúng ta sử dụng hàm fclose:

int

fclose(

FILE

*

file

);

Trong đó, file là con trỏ được dùng để lưu trữ địa chỉ của đối tượng FILE đang mở. Nếu đóng file thành công thì trả về giá trị 0, ngược lại trả về EOF (End of file).

const

char

*filePath =

"C:/Users/ADMIN/Desktop/my_document.txt"

; FILE *file; file = fopen(filePath,

"r"

);

if

(!file)

std

::

cout

<<

"Can not open this file"

<<

std

::

endl

;

else

std

::

cout

<<

"File is opened"

<<

std

::

endl

; fclose(file);

Hàm fclose sẽ giải phóng tất cả dữ liệu chưa được xử lý trên file nếu chúng vẫn còn lưu trong buffer, đóng file lại, và giải phóng tất cả vùng nhớ mà đối tượng FILE sử dụng.

Write data to file

Các bạn đã thực hiện được thao tác mở và đóng file, nhưng lúc này, file mới tạo ra vẫn chưa có dữ liệu nên mình sẽ thực hiện thao tác ghi dữ liệu vào file trước. Để mở file cho chế độ ghi file, chúng ta có các mode “w”, “r+”, “w+”, “a”, “a+”. Mình chỉ muốn ghi dữ liệu nên mình sẽ chọn mode “w”.

Nhưng trước hết, chúng ta nên tách thao tác ghi file ra một hàm riêng có dạng:

void

writeToFile(

FILE

*

file

);

Hàm này sẽ được gọi sau khi mở file và trước khi đóng file.

const

char

*filePath =

"C:/Users/ADMIN/Desktop/my_document.txt"

; FILE *file; file = fopen(filePath,

"w"

);

if

(!file)

std

::

cout

<<

"Can not open this file"

<<

std

::

endl

;

else

std

::

cout

<<

"File is opened"

<<

std

::

endl

; writeToFile(file); fclose(file);

Bây giờ, chúng ta chỉ quan tâm đến nội dung bên trong hàm writeToFile.

Để ghi dữ liệu vào file, chúng ta có các hàm đã được định nghĩa sẵn trong thư viện cstdio như sau:

fputc:

int

fputc

(

int

c, FILE *f)

;

Hàm fputc sẽ ghi ký tự có mã ASCII là c vào file được trỏ đến bởi con trỏ f. Giá trị trả về là EOF nếu ghi dữ liệu thất bại, trả về mã ASCII của kí tự được ghi vào nếu thực hiện thành công.

Ví dụ:

void

writeToFile

(FILE *file)

{

int

c = fputc(

'A'

, file);

std

::

cout

<< c <<

std

::

endl

; }

Sau khi chạy chương trình xong, các bạn mở file my_document.txt trên Desktop lên sẽ thấy kí tự ‘A’ đã được ghi vào, đồng thời trên console cũng in ra mã ASCII của kí tự ‘A’.

fputs:

int

fputs

(

const

char

*str, FILE *f)

;

Hàm fputs ghi một C-Style string vào file được trỏ đến bởi con trỏ f cho đến khi gặp kí tự ”.

Ví dụ:

void

writeToFile(

FILE

*

file

) {

int

c = fputs(

"hello"

,

file

); }

Sau khi chạy chương trình, các bạn mở file my_document.txt ở thư mục Desktop sẽ thấy kí tự ‘A’ lúc nãy không còn nữa, thay vào đó là chuỗi kí tự “hello”.

fprintf:

int

fprintf

(FILE *f,

const

char

*format, ...)

;

Hàm fprintf tương tự hàm printf trong ngôn ngữ C. Tuy nhiên, hàm printf được mặc định liên kết với đối tượng FILE có tên là stdout nên sử dụng hàm printf sẽ ghi nội dung ra màn hình.

Hàm printf tương đương với cách sử dụng fprintf(stdout, format, ...).

Nhưng lúc này, chúng ta muốn ghi dữ liệu vào file nên chúng ta sẽ truyền vào tham số thứ nhất là một con trỏ kiểu FILE khác với các đối tượng stdout, stdin hay stderr.

Cách định dạng cho tham số format trong hàm fprintf cũng giống như hàm printf, các bạn có thể tham khảo ở đây:

http://www.cplusplus.com/reference/cstdio/printf/

Ví dụ:

void

writeToFile(

FILE

*

file

) {

for

(

int

i =

1

; i <=

5

; i++) fprintf(

file

,

"This is an example line %dn"

, i); }

Sau khi chạy đoạn chương trình trên, các bạn mở lại file my_document.txt trong thư mục Desktop để xem lại kết quả.

Sử dụng hàm fprintf giúp chúng ta dễ dàng định dạng cho dữ liệu được ghi vào file, từ đó có thể ghi nhiều dòng vào file bằng vòng lặp nếu các dòng đó có cùng định dạng.

Read data from file

Đầu tiên mình sẽ tạo một hàm khác có tên là readFromFile như sau:

void

readFromFile(

FILE

*

file

) { }

Để làm các ví dụ trong phần này, mình sẽ gọi hàm này sau khi đã gọi hàm writeToFile.

const

char

*filePath =

"C:/Users/ADMIN/Desktop/my_document.txt"

; FILE *file; file = fopen(filePath,

"w+"

);

if

(!file)

std

::

cout

<<

"Can not open this file"

<<

std

::

endl

;

else

std

::

cout

<<

"File is opened"

<<

std

::

endl

; writeToFile(file); readFromFile(file); fclose(file);

Lúc này, file của chúng ta được mở để vừa đọc và ghi file, nên mình sẽ sử dụng mode “w+” (hoặc “r+”).

fgetc:

int

fgetc

(FILE *f)

;

Hàm fgetc đọc ra một kí tự trong file, internal file position indicator sẽ chuyển đến kí tự tiếp theo. Giá trị trả về là mã ASCII của kí tự đã đọc được.

Ví dụ:

void

readFromFile

(FILE *file)

{

std

::

cout

<< (

char

)fgetc(file) <<

std

::

endl

; }

fgets:

char

*

fgets

(

char

*buf,

int

n, FILE *f)

;

Hàm fgets đọc từ file ra (n – 1) kí tự, việc đọc dữ liệu sẽ bị dừng nếu đọc được kí tự new line ‘n’ hoặc EOF. Chuỗi kí tự đọc được sẽ lưu vào vùng nhớ được quản lý bởi con trỏ buf, nếu đọc dữ liệu thành công thì trả về địa chỉ của buf, ngược lại trả về NULL.

Ví dụ:

void

readFromFile

(FILE *file)

{

char

str[

255

];

std

::

cout

<< fgets(str,

255

, file) <<

std

::

endl

;

std

::

cout

<< str <<

std

::

endl

; }

Kết quả đọc file được lưu vào mảng kí tự str.

fscanf:

Tương tự như ghi dữ liệu vào file với định dạng cho trước, chúng ta cũng có thể đọc dữ liệu từ file với một định dạng nào đó.

int

fscanf

(FILE *f,

const

char

*format, ...)

;

fscanf cũng hoạt động tương tự hàm scanf trong ngôn ngữ C, tuy nhiên, hàm scanf được thiết lập liên kết mặc định đến file stdin. Như vậy, fscanf(stdin, format, ...) sẽ tương đương với scanf(format, ...).

http://www.cplusplus.com/reference/cstdio/scanf/

Ví dụ:

void

readFromFile

(FILE *file)

{

char

str[

255

];

fscanf

(file,

"%[^n]"

, str);

std

::

cout

<< str <<

std

::

endl

; }

Reposition stream position indicator

Ghép các ví dụ ở trên lại, chúng ta có một chương trình đơn giản minh họa cho việc ghi file và đọc từng dòng dữ liệu (line by line) đã được ghi vào file như sau:

void

writeToFile

(FILE *file)

{

for

(

int

i =

1

; i <=

5

; i++)

fprintf

(file,

"This is an example line %dn"

, i); }

void

readFromFile

(FILE *file)

{

char

str[

255

];

while

(fgets(str,

255

, file) !=

NULL

) {

std

::

cout

<< str; } }

int

main

()

{

const

char

*filePath =

"C:/Users/ADMIN/Desktop/my_document.txt"

; FILE *file; file = fopen(filePath,

"w+"

);

if

(!file)

std

::

cout

<<

"Can not open this file"

<<

std

::

endl

;

else

std

::

cout

<<

"File is opened"

<<

std

::

endl

; writeToFile(file); readFromFile(file); fclose(file);

return

0

; }

Tuy nhiên, kết quả cho ra màn hình không như mong muốn.

Nguyên nhân là khi chúng ta gọi hàm writeToFile và truyền vào đó con trỏ file, việc ghi file đã khiến internal file position indicator trỏ đến vị trí cuối cùng trong file. Sau khi quay trở lại hàm main, chúng ta tiếp tục gọi hàm readFromFile với cùng một con trỏ file. Như vậy, lúc chúng ta đọc file thì chúng ta lại bắt đầu đọc tại vị trí kết thúc file.

Để khắc phục điều này, chúng ta cần đóng con trỏ file lại và mở tạo một liên kết mới bằng hàm fopen với mode dùng để đọc file. Tuy nhiên, làm như vậy thì code xử lý của chúng ta sẽ dài hơn. Thư viện cstdio đã hỗ trợ cho chúng ta hàm fseek để thay đổi vị trí trỏ đến trong file của internal file position indicator.

int

fseek

(FILE *f,

long

int

offset,

int

origin)

;

Trong đó:

f là con trỏ trỏ đến đối tượng FILE đang mở.

offset là số bytes được cộng thêm tính từ vị trí origin.

origin là địa điểm đặt con trỏ trong file:

Như vậy, sau khi gọi hàm writeToFile xong, chúng ta cần di chuyển internal file position indicator về đầu file bằng cách như sau:

writeToFile(

file

) fseek(

file

,

0

, SEEK_SET) readFromFile(

file

)

Sau đó chạy chương trình thì thấy dữ liệu in ra màn hình đúng như những gì chúng ta đã ghi vào file.

Determine size of content of file

Đôi khi chúng ta cần đọc toàn bộ nội dung của file vào một vùng nhớ trên Heap, chúng ta sẽ cần biết trước kích thước nội dung có trong file để cấp phát đủ vùng nhớ trước khi đọc file. Thư viện cstdio chỉ cung cấp cho chúng ta hàm ftell:

long

int

ftell

(FILE *f)

;

Hàm này sẽ trả về vị trí của file indicator đang trỏ đến trong file (số bytes của nội dung file mà indicator đã duyệt qua).

Như vậy, các bạn có thể đọc kích thước của nội dung trong file bằng cách dịch internal file position indicator về vị trí cuối cùng trong file rồi gọi hàm ftell:

__int64 size_of_file(

FILE

*

file

) { fseek(

file

,

0

, SEEK_END); __int64

size

= ftell(

file

); fseek(

file

,

0

, SEEK_SET);

return

size

; }

Binary I/O functions

size_t

fwrite(

const

void

*ptr,

size_t

size,

size_t

count, FILE *f);

Hàm fwrite dùng để ghi dãy bit trong vùng nhớ được quản lý bởi con trỏ ptr vào file đang được trỏ bởi f, size là số bytes sẽ copy từ vùng nhớ của ptr và count là số lần ghi vùng nhớ đó xuống file.

Hàm fwrite không quan tâm vùng nhớ của các bạn có định dạng gì, nó quan tâm kích thước vùng nhớ cần đọc và cứ thế copy tất cả các bits và file, mỗi lần sẽ copy 1 block of bit.

size_t

fread(

void

*ptr,

size_t

size,

size_t

count, FILE *f);

Hàm fread sẽ copy count lần block of bits có kích thước là size, đưa vào vùng nhớ được trỏ đến bởi ptr, từ file đang được quản lý bởi f.

Sau khi gọi hàm fread, internal file position indicator sẽ di chuyển tới (size * count) bytes từ vị trí bắt đầu đọc file.

Ví dụ:

void

writeToFile

(FILE *file)

{

char

*s =

"Hello everyone!"

; fwrite(s,

strlen

(s),

1

, file); }

void

readFromFile

(FILE *file)

{

void

*ptr =

operator

new

(

255

); fread(ptr,

255

,

1

, file); }

int

main

()

{

const

char

*filePath =

"C:/Users/ADMIN/Desktop/my_document.txt"

; FILE *file; file = fopen(filePath,

"w+b"

);

if

(!file)

std

::

cout

<<

"Can not open this file"

<<

std

::

endl

;

else

std

::

cout

<<

"File is opened"

<<

std

::

endl

; writeToFile(file); fseek(file,

0

, SEEK_SET); readFromFile(file); fclose(file);

return

0

; }

Chạy chương trình trên cho ra kết quả là rất nhiều kí tự rác.

Như các bạn thấy, hàm fread đọc đúng 255 bytes trong file để đưa vào vùng nhớ của ptr nên các giá trị thừa xuất hiện. Trong trường hợp này, dùng hàm fread và fwrite không phù hợp. Hàm fread và fwrite thường được dùng để đọc và ghi dữ liệu kiểu struct vào file.

Write and read structs

Mình vẫn giữ nguyên cấu trúc chương trinh như trên và chỉ thay đổi code trong hàm writeToFile và readFromFile.

Trước hết, mình tạo một struct đơn giản như sau:

struct Employee { __int32 ID char name[

50

] }

Các bạn thử tưởng tượng nếu chúng ta sử dụng các hàm ghi file như fputs, fprintf… thì kích thước tên của mỗi người sẽ khác nhau dẫn đến chúng ta không có một định dạng chung để dễ quản lý nhiều Employee trong file. Việc đặt chúng vào trong 1 struct giúp chúng ta đọc và ghi file dễ dàng hơn nhiều.

struct

Employee {

__

int32 ID;

char

name[

50

]; }; Employee emps[

3

] = { {

1

,

"Le Tran Dat"

}, {

2

,

"Ngo Doan Tuan"

}, {

3

,

"Le Dinh Huy"

} };

void

writeToFile

(FILE *file)

{

for

(

int

i =

0

; i <

3

; i++) { fwrite(&emps[i],

sizeof

(Employee),

1

, file); } }

void

readFromFile

(FILE *file)

{ Employee emp;

for

(

int

i =

0

; i <

3

; i++) { fread(&emp,

sizeof

(Employee),

1

, file);

std

::

cout

<< chúng tôi <<

std

::

endl

;

std

::

cout

<< chúng tôi <<

std

::

endl

;

std

::

cout

<<

"================================"

<<

std

::

endl

; } }

int

main

()

{

const

char

*filePath =

"C:/Users/ADMIN/Desktop/my_document.txt"

; FILE *file; file = fopen(filePath,

"w+b"

);

if

(!file)

std

::

cout

<<

"Can not open this file"

<<

std

::

endl

;

else

std

::

cout

<<

"File is opened"

<<

std

::

endl

; writeToFile(file); fseek(file,

0

, SEEK_SET); readFromFile(file); fclose(file);

return

0

; }

Các bạn chạy thử đoạn chương trình trên để xem kết quả.

Bây giờ chúng ta cùng mở file my_document.txt trong thư mục Desktop để xem thử nội dung trong file như thế nào:

Vậy là nội dung file đã bị mã hóa dưới dạng nhị phân nên không thể đọc hoàn toàn nội dung lưu trong file được.

Việc sử dụng hàm fread và fwrite cho các kiểu dữ liệu struct giúp chúng ta thao tác dễ dàng hơn khi kích thước của các biến struct là giống nhau.

Hẹn gặp lại các bạn trong bài học tiếp theo trong khóa học lập trình C++ hướng thực hành.

Mọi ý kiến đóng góp hoặc thắc mắc có thể đặt câu hỏi trực tiếp tại diễn đàn.

www.daynhauhoc.com

Hướng Dẫn Sử Dụng Photoshop Online Cơ Bản

Với người dùng cơ bản đến cao hơn một tí thì việc dùng sử dụng Photoshop hơi bị phí, mình nói vậy vì phần mềm này có giá lên đến vài triệu, thêm vào đó bạn cần một chiếc máy tính đủ mạnh để sử dụng một cách trơn tru nhất.

Chính vì lý do này mà Photoshop online nổi lên như một cung cụ tuyệt vời thay thế Photoshop trên máy tính, nó có rất nhiều tính năng quan trọng giúp bạn chỉnh sửa ảnh theo ý muốn mà chi phí lại bằng 0.

Trong bài viết này, Bietmaytinh sẽ giới thiệu các thao tác sử dụng cơ bản để bạn làm quen.

Địa chỉ truy cập: bietmaytinh.com/photoshop.

Cách tải ảnh lên

Đây là công việc đầu tiên bạn cần làm khi muốn chỉnh sửa ảnh bằng Photoshop online. Cách thực hiện rất đơn giản, khi mới vừa truy cập vào, bạn sẽ thấy một cái bảng với nhiều tùy chọn khác nhau, ta sẽ chọn:

CREATE A NEW IMAGE: Chọn cái này khi muốn tạo một ảnh mới hoàn toàn.

OPEN IMAGE FROM COMPUTER: Tải ảnh từ máy tính lên.

OPEN IMAGE FROM URL: Mở ảnh bằng đường link, nếu ảnh có trên internet, bạn chỉ cần copy link ảnh vào là xong.

Giao diện cơ bản

Phía trên là menu, nơi chứa các tính năng chưa được show ra trong giao diện. Dưới menu là nơi chứa đặc tính của cung cụ được chọn.

Phần bên trái là nơi chứa các cung cụ làm việc chính của Photoshop online như cung cụ chọn vùng, tẩy xóa, đổ màu, vẽ hình khối, viết chữ, phóng to, hút màu…

Bên phải có Navigator, bảng này giúp bạn phóng to một vùng ảnh, zoom một vùng ảnh để chỉnh sửa dễ dàng hơn, bạn có thể bấm vào biểu tượng tam giác hoặc dùng thanh trượt để phóng to thu nhỏ ảnh.

Layers: Nơi chứa các lớp ảnh, đây là tính năng quan trọng khi sử dụng phần mềm đồ họa. Khi thiết kế và chỉnh sửa ảnh nâng cao bạn sẽ dùng tính năng này nhiều đấy.

History: Lưu giữ lịch sử chỉnh sửa.

Phóng to, thu nhỏ ảnh

Khi phóng lớn ảnh, bạn có thể dùng chuột kéo hình chữ nhật màu đỏ trong ảnh đến nơi cần chỉnh sửa.

Một cách khác là dùng cung cụ Zoom tại hộp cung cụ bên trái (phím tắt kích hoạt tính năng này là Z), tiếp đó chọn vùng muốn phóng to.

Cài thêm font chữ

Photoshop online cũng hỗ trợ nhiều font chữ giúp bạn chèn chữ vào ảnh nhưng đa số không đẹp lắm, nếu bạn muốn tạo quote hay muốn chèn chữ thật ấn tượng vào ảnh thì không còn cách nào khác ngoài việc cài thêm font chữ.

Hướng dẫn chỉnh sửa ảnh

Tham khảo: Cắt ảnh, resize ảnh, đổi đuôi ảnh, xoay ảnh, làm mờ ảnh, xoay chữ, cắt ảnh hình tròn, make up ( xóa mụn, làm trắng răng), làm mờ ảnh phía sau (tạo ảnh chụp xóa phông), ghép ảnh vào khung.

Phím tắt

Muốn sử dụng nhanh và chuyên nghiệp hơn thì bạn phải biết phím tắt, nó tăng tốc thao tác cực kỳ nhanh.

Phím tắt thông dụng nhất:

Thêm nữa Còn đây là phím tắt kích hoạt nhanh các cung cụ bên trái, chỉ cần bấm phím

C: Crop tool, cắt ảnh

V: Move tool, di chuyển đối tượng

M: Marquee tool, chọn vùng

L: Lasso tool, cũng là cung cụ chọn vùng nhưng linh hoạt hơn

W: Wand tool, chọn vùng gần đúng

J: Pencil tool, bút vẽ

B: Brush tool, vẽ các hình ảnh lặp đi lặp lại

E: Eraser tool, xóa vùng ảnh

G: Paint bucket tool, đổ màu cho một vùng trên ảnh

S: Clone Stamp tool: Chọn một vùng ảnh, sau đó vẽ lại trên một khu vực khác, dùng khi xóa mụn hoặc xóa đối tượng trong ảnh

R: Blur tool, làm mờ vùng ảnh

Y: Sharpen tool, làm rõ nét vùng ảnh

U: Smudge tool, tạo vết xước trên ảnh, dùng khi muốn vẻ lại tóc sau khi tách ảnh

P: Sponge tool, làm màu sắc hình ảnh bão hòa hoặc rực rỡ hơn

O: Dodge tool, làm sáng hình ảnh

N: Burn tool, làm tối hình ảnh

A: Bloat tool, phóng to vùng được chọn

K: Pinch tool, thu nhỏ vùng được chọn

I: Colorpicker tool: Lấy màu ảnh

T: Type tool, viết chữ lên ảnh

H: Hand tool, cuộn hình ảnh

Z: Zoom tool, phóng to/nhỏ ảnh

Sửa lỗi không mở được Photoshop online

Nguyên nhân là Photoshop online sử dụng Flash để chạy mà hầu hết trình duyệt hiện nay mặc định sẽ tắt Flash đi, bạn chỉ việc mở lên là dùng được thôi.

Nếu dùng trình duyệt Chrome, bạn bấm vào Secure màu xanh, sau đó bấm vào Block tại Flash, chọn Always allow on this site.

Vài gợi ý giúp bạn sử dụng Photoshop miễn phí

Bạn có thể tải về và sử dụng hợp pháp Photoshop free bằng 4 cách đơn giản sau:

Sử dụng Photoshop Trial trong 7 ngày: Cách này giúp bạn có thể sử dụng đầy đủ các tính năng của Photoshop, tất nhiên ta sẽ có 7 ngày để khám phá nó nếu bạn muốn dùng miễn phí.

Tải và sử dụng bản Photoshop CS2: Phiên bản này khá lâu rồi nhưng bạn có thể sử dụng tất cả tính năng của nó bao lâu cũng được.

Sử dụng Photoshop Elements Trial trong 7 ngày: Phiên bản dành cho người dùng thông thường với giao diện và cách sử dụng đơn giản, bạn cũng được dùng miễn phí 7 ngày.

Tải ứng dụng Photoshop Express trên điện thoại thông minh: Phiên bản Photoshop chính chủ hoàn toàn miễn phí, bạn có thể tải nó tại Google Play và App Store.

Bây giờ việc của bạn chỉ là chọn cho mình cách thuận tiện nhất và bắt đầu chỉnh sửa ảnh như một nhiếp ảnh gia chuyên nghiệp.

Thao Tác Với Các Thư Mục Và Tập Tin

Thao tác với các thư mục và tập tin

Có ba cách thực hiện :

Nếu tập tin thuộc loại tập tin văn bản thì chương trình ứng dụng kết hợp sẽ được khởi động và tài liệu sẽ được nạp vào. Trong trường hợp chương trình ứng dụng không được cài đặt trong máy tính thì Windows sẽ mở hộp thoại Open With và để bạn chọn chương trình kết hợp.

1. Chọn tập tin/ thư mục

Chọn một nhóm tập tin/ thư mục: có thể thực hiện theo 2 cách:

2. Tạo thư mục

 Chọn nơi chứa thư mục (thư mục/ ổ đĩa) ở cửa sổ bên trái.

 Nhập tên thư mục mới, sau đó gõ Enter để kết thúc.

3. Sao chép thư mục và tập tin

Chọn các thư mục và tập tin cần sao chép và thực hiện một trong hai cách sau:

Cách 1: Nhấn giữ phím Ctrl và Drag đối tượng đã chọn đến nơi cần chép.

4. Di chuyển thư mục và tập tin

Chọn các thư mục và tập tin cần di chuyển và thực hiện một trong hai cách sau:

Cách 1: Drag đối tượng đã chọn đến nơi cần di chuyển.

5. Xóa thư mục và tập tin

Chọn các thư mục và tập tin cần xóa.

Xác nhận có thực sự muốn xóa hay không (Yes/ No)

6. Phục hồi thư mục và tập tin

Các đối tượng bị xóa được đưa vào Recycle Bin. Nếu muốn phục hồi các đối tượng đã xóa, bạn thực hiện các thao tác sau đây:

Chọn đối tượng cần phục hồi.

Ghi chú:

Nếu muốn xóa hẳn các đối tượng, ta thực hiện thao tác xóa một lần nữa đối với các đối tượng ở trong Recycle Bin.

7. Đổi tên thư mục và tập tin

Chọn đối tượng muốn đổi tên

Nhập tên mới, sau đó gõ Enter để kết thúc.

Ghi chú: với tập tin đang sử dụng thì các thao tác di chuyển, xóa, đổi tên không thể thực hiện được.

8. Thay đổi thuộc tính tập tin và thư mục

Nhấn chuột phải lên đối tượng muốn thay đổi thuộc tính và chọn lệnh Properties

Thay đổi các thuộc tính.

Chọn Apply để xác nhận thay đổi, ngược lại thì nhấn Cancel.

9. Tạo lối tắt (Shortcuts)

9.1 Tạo lối tắt từ màn hình nền Desktop

9.2 Tạo trực tiếp từ tập tin/ thư mục

10. Thao tác với đĩa

10.1 Định dạng đĩa

Nếu muốn đặt tên cho đĩa thì nhập tên mới vào mục Volume label, muốn định dạng nhanh (chỉ xóa dữ liệu) thì chọn mục Quick Format, tại mục File system, chọn là FAT32 hoặc NTFS đối với những ổ đĩa có dung

lượng lớn.

Nhắp chọn Start để tiến hành định dạng.

Chú ý: dữ liệu trong đĩa sẽ bị xóa hoàn toàn, không thể phục hồi được. Hình 5.3: Định dạng ổ đĩa

10.2 Hiển thị thông tin của đĩa

Lớp General: cho biết dung lượng đĩa (Capacity), đã sử dụng bao nhiêu (Used space), còn lại bao nhiêu (Free space).

Lớp Tools: cung cấp một số công cụ kiểm tra đĩa (Error-checking), tạo đĩa dự phòng (Backup), chống phân mảnh đĩa (Defragment).

Lớp Sharing: cho phép đặt cách thức chia sẻ tài nguyên có trên đĩa (với máy tính có nối mạng).

Bạn đang xem bài viết Các Thao Tác Cơ Bản Sử Dụng Windows Explorer trên website Bothankankanhatban.com. Hy vọng những thông tin mà chúng tôi đã chia sẻ là hữu ích với bạn. Nếu nội dung hay, ý nghĩa bạn hãy chia sẻ với bạn bè của mình và luôn theo dõi, ủng hộ chúng tôi để cập nhật những thông tin mới nhất. Chúc bạn một ngày tốt lành!