Chương này chứa công thức cho thấy một số kỹ thuật được sử dụng để đọc và ghi dữ liệu vào tập tin. Nó cũng chứa các công thức cho thấy kỹ thuật để quản lý các tập tin trong một hệ thống tập tin. Chúng ta sẽ tìm hiểu bao gồm các công thức:
Appending records to a file.
Reading rows using a regular expression.
Moving, copying, renaming, and deleting files and folders. Capturing file information..
6.1. Appending records to a file.
Công thức đơn giản này là bí quyết làm thế nào một tập tin có thể được xây dựng trong trong các sub jobs khác nhau bằng cách thêm dữ liệu vào một tập tin hiện có. Phương pháp phụ thêm (Append) là một cách để xây dựng các tập tin phức tạp, như sẽ được chứng minh trong phần này.
Tạo một subjob mới bao gồm tFixedFlowInput và tFileOutputDelimited.
Copy subjob đó và paste tạo thành subjob_2.
Liên kết 2 subjob bằng onSubjobOK.
Chọn tFixedFlowInput_2 và thay đổi Records from first subjob thành Records from second subjob.
Chọn tFileOutputDelimited_2 và check vào Append.
Run Job ta có kết quả là. Subjob thứ nhất tạo ra một File, subjob thứ hai gắn thêm vào cùng một tập tin với subjob trước.
job: jo_cook_ch04_0020_usingExpressions. start 10:21:00 - success job: jo_cook_ch04_0030_ternaryExpressions. start 10:21:00 - failure job: jo_cook_ch04_0040_tMapVariables. start 10:21:00 - success job: jo_cook_ch08_0020_readRegexData. start 10:21:00 – failure
Thiết kế một Job cá cấu trúc như sau: trong đó tFileInputRegex chứa dường dẫn đến file chuong06.txt vừa tạo.
Mở tFileInputRegex và nhập đoạn code sau:
"^job: "+ "([a-zA-Z0-9_]*)"+ "\\. *start *"+ "([0-9][0-9]:[0-9][0-9]:[0-9][0-9])"+ " - "+ "(success|failure)"+ ".*"
Run Job bạn sẽ nhìn thấy jobName, startTime, và status được trích xuất thành công từ các chuỗi, kết quả như hình dưới đây.
Cũng giống như đọc và ghi các file, Talend có một tập hợp các components cho phép các nhà phát triển để thực hiện các chức năng tập tin mà không cần phải gọi lệnh hệ điều hành hệ thống. Công thức này cho thấy các components quản lý tập tin cơ bản.
Trong công thức sau đây, lưu ý rằng Talend sử dụng dấu gạch chéo phong cách Linux (/) trong đường dẫn tập tin, như trái ngược với dấu gạch chéo ngược Windows (\).