Aspose::Words::Tables::RowCollection::idx_get method
Contents
[
Hide
]RowCollection::idx_get method
Retrieves a Row at the given index.
System::SharedPtr<Aspose::Words::Tables::Row> Aspose::Words::Tables::RowCollection::idx_get(int32_t index)
Parameter | Type | Description |
---|---|---|
index | int32_t | An index into the collection. |
Remarks
The index is zero-based.
Negative indexes are allowed and indicate access from the back of the collection. For example -1 means the last item, -2 means the second before last and so on.
If index is greater than or equal to the number of items in the list, this returns a null reference.
If index is negative and its absolute value is greater than the number of items in the list, this returns a null reference.
Examples
Shows how to iterate through all tables in the document and print the contents of each cell.
auto doc = System::MakeObject<Aspose::Words::Document>(get_MyDir() + u"Tables.docx");
System::SharedPtr<Aspose::Words::Tables::TableCollection> tables = doc->get_FirstSection()->get_Body()->get_Tables();
ASSERT_EQ(2, tables->ToArray()->get_Length());
for (int32_t i = 0; i < tables->get_Count(); i++)
{
std::cout << System::String::Format(u"Start of Table {0}", i) << std::endl;
System::SharedPtr<Aspose::Words::Tables::RowCollection> rows = tables->idx_get(i)->get_Rows();
// We can use the "ToArray" method on a row collection to clone it into an array.
ASPOSE_ASSERT_EQ(rows, rows->ToArray());
ASPOSE_ASSERT_NS(rows, rows->ToArray());
for (int32_t j = 0; j < rows->get_Count(); j++)
{
std::cout << System::String::Format(u"\tStart of Row {0}", j) << std::endl;
System::SharedPtr<Aspose::Words::Tables::CellCollection> cells = rows->idx_get(j)->get_Cells();
// We can use the "ToArray" method on a cell collection to clone it into an array.
ASPOSE_ASSERT_EQ(cells, cells->ToArray());
ASPOSE_ASSERT_NS(cells, cells->ToArray());
for (int32_t k = 0; k < cells->get_Count(); k++)
{
System::String cellText = cells->idx_get(k)->ToString(Aspose::Words::SaveFormat::Text).Trim();
std::cout << System::String::Format(u"\t\tContents of Cell:{0} = \"{1}\"", k, cellText) << std::endl;
}
std::cout << System::String::Format(u"\tEnd of Row {0}", j) << std::endl;
}
std::cout << System::String::Format(u"End of Table {0}\n", i) << std::endl;
}
See Also
- Class Row
- Class RowCollection
- Namespace Aspose::Words::Tables
- Library Aspose.Words for C++